
(executable
  (name sse_server)
  (modules sse_server)
  (libraries tiny_httpd unix ptime ptime.clock.os))

(executable
  (name sse_client)
  (modules sse_client)
  (libraries unix))

(executable
  (name echo)
  (flags :standard -warn-error -a+8)
  (modules echo)
  (libraries tiny_httpd tiny_httpd_camlzip))

(rule
  (targets test_output.txt)
  (deps (:script ./run_test.sh) ./sse_client.exe ./sse_server.exe)
  (enabled_if (= %{system} "linux"))
  (package tiny_httpd)
  (action
    (with-stdout-to %{targets} (run %{script}))))

(rule
  (alias runtest)
  (package tiny_httpd)
  (enabled_if (= %{system} "linux"))
  (deps test_output.txt)
  (action
    (diff test_output.txt.expected test_output.txt)))
