jbaldwin / libcoro

C++20 coroutine library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`expected` submodule builds their tests despite LIBCORO_BUILD_TESTS=OFF here

dok-net opened this issue · comments

See subject line.

I've pushed a PR that I think resolves this issue, please take a look when you have a moment.

Output from using these cmake settings

cmake -DCMAKE_BUILD_TYPE=Debug -DLIBCORO_BUILD_TESTS=OFF ..

$ make -j
[  1%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__get_hostent.c.o
[  1%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__close_sockets.c.o
[  3%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__parse_into_addrinfo.c.o
[  4%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__sortaddrinfo.c.o
[  4%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__readaddrinfo.c.o
[  5%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__read_line.c.o
[  6%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_android.c.o
[  6%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_cancel.c.o
[  7%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares__timeval.c.o
[  8%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_data.c.o
[  9%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_destroy.c.o
[ 10%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_expand_name.c.o
[ 11%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_expand_string.c.o
[ 12%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_fds.c.o
[ 13%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_free_hostent.c.o
[ 14%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_getaddrinfo.c.o
[ 16%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_freeaddrinfo.c.o
[ 16%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_getenv.c.o
[ 17%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_gethostbyaddr.c.o
[ 17%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_free_string.c.o
[ 18%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_gethostbyname.c.o
[ 19%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_getnameinfo.c.o
[ 20%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_getsock.c.o
[ 21%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_llist.c.o
[ 22%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_library_init.c.o
[ 22%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_init.c.o
[ 23%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_mkquery.c.o
[ 24%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_create_query.c.o
[ 25%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_nowarn.c.o
[ 26%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_options.c.o
[ 27%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_a_reply.c.o
[ 27%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_aaaa_reply.c.o
[ 28%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_mx_reply.c.o
[ 29%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_naptr_reply.c.o
[ 30%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_caa_reply.c.o
[ 31%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_ns_reply.c.o
[ 33%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_soa_reply.c.o
[ 32%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_ptr_reply.c.o
[ 34%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_srv_reply.c.o
[ 35%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_parse_txt_reply.c.o
[ 35%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_platform.c.o
[ 36%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_query.c.o
[ 37%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_process.c.o
[ 38%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_search.c.o
[ 39%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_send.c.o
[ 40%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_strcasecmp.c.o
[ 40%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_strdup.c.o
[ 42%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_strerror.c.o
[ 42%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_strsplit.c.o
[ 43%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_timeout.c.o
[ 44%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_version.c.o
[ 45%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/inet_net_pton.c.o
[ 46%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/ares_writev.c.o
[ 46%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/inet_ntop.c.o
[ 47%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/bitncmp.c.o
[ 48%] Building C object vendor/c-ares/c-ares/src/lib/CMakeFiles/c-ares.dir/windows_port.c.o
[ 49%] Linking C static library ../../lib/libcares.a
[ 49%] Built target c-ares
[ 50%] Building CXX object CMakeFiles/libcoro.dir/src/io_scheduler.cpp.o
[ 52%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/ahost.dir/ahost.c.o
[ 54%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/ahost.dir/__/lib/ares_nowarn.c.o
[ 54%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/adig.dir/adig.c.o
[ 55%] Building CXX object CMakeFiles/libcoro.dir/src/semaphore.cpp.o
[ 55%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/acountry.dir/acountry.c.o
[ 56%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/ahost.dir/__/lib/ares_strcasecmp.c.o
[ 56%] Building CXX object CMakeFiles/libcoro.dir/src/mutex.cpp.o
[ 57%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/adig.dir/ares_getopt.c.o
[ 56%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/ahost.dir/ares_getopt.c.o
[ 58%] Building CXX object CMakeFiles/libcoro.dir/src/event.cpp.o
[ 59%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/acountry.dir/__/lib/ares_nowarn.c.o
[ 60%] Building CXX object CMakeFiles/libcoro.dir/src/sync_wait.cpp.o
[ 62%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/acountry.dir/ares_getopt.c.o
[ 62%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/adig.dir/__/lib/ares_strcasecmp.c.o
[ 63%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/adig.dir/__/lib/ares_nowarn.c.o
[ 64%] Building CXX object CMakeFiles/libcoro.dir/src/net/dns_resolver.cpp.o
[ 64%] Building CXX object CMakeFiles/libcoro.dir/src/thread_pool.cpp.o
[ 65%] Building CXX object CMakeFiles/libcoro.dir/src/net/connect.cpp.o
[ 66%] Building C object vendor/c-ares/c-ares/src/tools/CMakeFiles/acountry.dir/__/lib/ares_strcasecmp.c.o
[ 67%] Building CXX object CMakeFiles/libcoro.dir/src/net/ip_address.cpp.o
[ 67%] Building CXX object CMakeFiles/libcoro.dir/src/net/recv_status.cpp.o
[ 68%] Building CXX object CMakeFiles/libcoro.dir/src/net/send_status.cpp.o
[ 69%] Building CXX object CMakeFiles/libcoro.dir/src/net/socket.cpp.o
[ 70%] Linking C executable ../../bin/ahost
[ 71%] Building CXX object CMakeFiles/libcoro.dir/src/net/ssl_context.cpp.o
[ 72%] Building CXX object CMakeFiles/libcoro.dir/src/net/tcp_server.cpp.o
[ 75%] Linking C executable ../../bin/acountry
[ 73%] Building CXX object CMakeFiles/libcoro.dir/src/net/udp_peer.cpp.o
[ 74%] Building CXX object CMakeFiles/libcoro.dir/src/net/tcp_client.cpp.o
[ 76%] Linking C executable ../../bin/adig
[ 76%] Built target ahost
[ 76%] Built target acountry
[ 76%] Built target adig
[ 77%] Linking CXX static library libcoro.a
[ 77%] Built target libcoro
[ 78%] Building CXX object examples/CMakeFiles/coro_task_container.dir/coro_task_container.cpp.o
[ 79%] Building CXX object examples/CMakeFiles/coro_task.dir/coro_task.cpp.o
[ 81%] Building CXX object examples/CMakeFiles/coro_semaphore.dir/coro_semaphore.cpp.o
[ 81%] Building CXX object examples/CMakeFiles/coro_latch.dir/coro_latch.cpp.o
[ 81%] Building CXX object examples/CMakeFiles/coro_ring_buffer.dir/coro_ring_buffer.cpp.o
[ 81%] Building CXX object examples/CMakeFiles/coro_event.dir/coro_event.cpp.o
[ 82%] Building CXX object examples/CMakeFiles/coro_shared_mutex.dir/coro_shared_mutex.cpp.o
[ 84%] Building CXX object examples/CMakeFiles/coro_tcp_echo_server.dir/coro_tcp_echo_server.cpp.o
[ 84%] Building CXX object examples/CMakeFiles/coro_mutex.dir/coro_mutex.cpp.o
[ 86%] Building CXX object examples/CMakeFiles/coro_generator.dir/coro_generator.cpp.o
[ 86%] Building CXX object examples/CMakeFiles/coro_thread_pool.dir/coro_thread_pool.cpp.o
[ 87%] Building CXX object examples/CMakeFiles/coro_io_scheduler.dir/coro_io_scheduler.cpp.o
[ 87%] Building CXX object examples/CMakeFiles/coro_http_200_ok_server.dir/coro_http_200_ok_server.cpp.o
[ 88%] Linking CXX executable coro_generator
[ 89%] Linking CXX executable coro_event
[ 90%] Linking CXX executable coro_latch
[ 90%] Built target coro_generator
[ 91%] Linking CXX executable coro_mutex
[ 92%] Linking CXX executable coro_shared_mutex
[ 93%] Linking CXX executable coro_ring_buffer
[ 93%] Built target coro_event
[ 95%] Linking CXX executable coro_task
[ 95%] Linking CXX executable coro_io_scheduler
[ 95%] Built target coro_latch
[ 96%] Linking CXX executable coro_tcp_echo_server
[ 97%] Linking CXX executable coro_task_container
[ 98%] Linking CXX executable coro_semaphore
[ 98%] Built target coro_shared_mutex
[ 98%] Built target coro_mutex
[ 98%] Built target coro_ring_buffer
[ 98%] Built target coro_task
[ 99%] Linking CXX executable coro_thread_pool
[ 99%] Built target coro_semaphore
[ 99%] Built target coro_task_container
[100%] Linking CXX executable coro_http_200_ok_server
[100%] Built target coro_io_scheduler
[100%] Built target coro_tcp_echo_server
[100%] Built target coro_thread_pool
[100%] Built target coro_http_200_ok_server

I'm building what I ultimately want, that's no tests and no networking. With the pending PRs right now, merged into one, I still keep getting the lengthy Catch2.dir ... build steps :-(

...

[  5%] Linking CXX static library libcoro.a
[  5%] Built target libcoro
[  5%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/reporters/catch_reporter_automake.cpp.o
[  6%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/reporters/catch_reporter_common_base.cpp.o

...

Just curious, did you delete the build directory and run fresh? Mine didn't work either until I did that.

Fresh start, removed Release directory, after the libcoro.a is complete, it endlessly builds Catch2 stuff.

I'll try on a Release build when I get a moment, maybe something is still broken there.