brndnmtthws / conky

Light-weight system monitor for X, Wayland (sort of), and other things, too
https://conky.cc
GNU General Public License v3.0
7.15k stars 614 forks source link

Ninja fails to order dependencies correctly for main.cc when BUILD_BUILTIN_CONFIG specified #1118

Closed mjeveritt closed 2 years ago

mjeveritt commented 3 years ago

Issue

Cmake fails with:

/var/tmp/portage/app-admin/conky-1.12.1-r1/work/conky-1.12.1/src/main.cc:51:10: fatal error: defconfig.h: No such file or directory         
   51 | #include "defconfig.h"                                                                                                               
      |          ^~~~~~~~~~~~~                                                                                                               
compilation terminated.

when BUILD_BUILTIN_CONFIG and/or BUILD_OLD_CONFIG is specified

Information

* Package:    app-admin/conky-1.11.6-r2
 * Repository: mjeveritt
 * USE:        X abi_x86_64 amd64 elibc_musl iconv ipv6 kernel_linux lua_single_target_lua5-3 ncurses portmon pulseaudio userland_GNU
 * FEATURES:   distcc network-sandbox preserve-libs sandbox userpriv usersandbox
 * FEATURES='assume-digests binpkg-docompress binpkg-dostrip binpkg-logs candy config-protect-if-modified distcc distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms split-elog split-log strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr'
 * CFLAGS='-O2 -pipe -mtune=amdfam10'
 * CXXFLAGS='-O2 -pipe -mtune=amdfam10'
 * FFLAGS='-O2 -pipe -mtune=amdfam10'
 * FCFLAGS='-O2 -pipe -mtune=amdfam10'
 * F77FLAGS='-O2 -pipe -mtune=amdfam10'
 * LDFLAGS='-Wl,-O1 -Wl,--as-needed'
 * MAKEOPTS='-j6'
 * x86_64-gentoo-linux-musl-gcc (Gentoo 9.3.0 p2) 9.3.0
 * x86_64-gentoo-linux-musl-g++ (Gentoo 9.3.0 p2) 9.3.0
 * GNU ld (Gentoo 2.35.1 p2) 2.35.1
 * Linux netscape 5.4.108-xanmod1 #11 SMP Thu Jul 1 01:01:42 BST 2021 x86_64 AMD Athlon(tm) II X2 260 Processor AuthenticAMD GNU/Linux
app-admin/conky: 45 seconds average for 2 merges
2019-12-01T02:48:53 >>> app-admin/conky: 47 seconds
2020-06-22T09:21:40 >>> app-admin/conky: 43 seconds
 * Determining the location of the kernel source code
 * Unable to find kernel sources at /usr/src/linux
 * Please make sure that /usr/src/linux points at your running kernel, 
 * (or the kernel you wish to build against).
 * Alternatively, set the KERNEL_DIR environment variable to the kernel sources location
 * Unable to calculate Linux Kernel version for build, attempting to use running version
 * Unable to check for the following kernel config options due
 * to absence of any configured kernel sources or compiled
 * config:
 *  - IPV6
 * You're on your own to make sure they are set if needed.
 * Using lua5.3 to build
>>> Unpacking source...
>>> Unpacking conky-1.11.6.tar.gz to /var/tmp/portage/app-admin/conky-1.11.6-r2/work
>>> Source unpacked in /var/tmp/portage/app-admin/conky-1.11.6-r2/work
>>> Preparing source in /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6 ...
 * Applying conky-1.11.6-fpermissive.patch ...
 [ ok ]
 * Applying conky-1.11.6-ipv6.patch ...
 [ ok ]
 * Working in BUILD_DIR: "/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build"
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6 ...
 * Working in BUILD_DIR: "/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build"
cmake -C /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build/gentoo_common_config.cmake -G Ninja -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_ARGB=yes -DBUILD_X11=yes -DBUILD_XDAMAGE=yes -DBUILD_XDBE=yes -DBUILD_XSHAPE=yes -DOWN_WINDOW=yes -DBUILD_APCUPSD=no -DBUILD_AUDACIOUS=no -DBUILD_CMUS=no -DBUILD_CURL=no -DBUILD_DOCS=no -DBUILD_HDDTEMP=no -DBUILD_HTTP=no -DBUILD_IBM=no -DBUILD_ICAL=no -DBUILD_ICONV=yes -DBUILD_IMLIB2=no -DBUILD_IOSTATS=no -DBUILD_IPV6=yes -DBUILD_IRC=no -DBUILD_JOURNAL=no -DBUILD_LUA_CAIRO=no -DBUILD_LUA_IMLIB2=no -DBUILD_LUA_RSVG=no -DBUILD_MATH=no -DBUILD_MOC=no -DBUILD_MPD=no -DBUILD_MYSQL=no -DBUILD_NCURSES=yes -DBUILD_NVIDIA=no -DBUILD_OLD_CONFIG=yes -DBUILD_PORT_MONITORS=yes -DBUILD_PULSEAUDIO=yes -DBUILD_RSS=no -DBUILD_WEATHER_METAR=no -DBUILD_WLAN=no -DBUILD_XFT=no -DBUILD_XINERAMA=no -DBUILD_XMMS2=no -DDOC_PATH=/usr/share/doc/conky-1.11.6-r2 -DMAINTAINER_MODE=no -DRELEASE=yes -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_TOOLCHAIN_FILE=/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build/gentoo_toolchain.cmake  /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6
loading initial cache file /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build/gentoo_common_config.cmake
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- CMAKE_C_FLAGS: -std=c99
-- CMAKE_CXX_FLAGS: -std=c++17
-- CMAKE_C_FLAGS_DEBUG: -g
-- CMAKE_CXX_FLAGS_DEBUG: -g
-- CMAKE_C_FLAGS_MINSIZEREL: -Os -DNDEBUG
-- CMAKE_CXX_FLAGS_MINSIZEREL: -Os -DNDEBUG
-- CMAKE_C_FLAGS_RELEASE: -O3 -DNDEBUG
-- CMAKE_CXX_FLAGS_RELEASE: -O3 -DNDEBUG
-- CMAKE_C_FLAGS_RELWITHDEBINFO: -O2 -g -DNDEBUG
-- CMAKE_CXX_FLAGS_RELWITHDEBINFO: -O2 -g -DNDEBUG
-- CMAKE_BUILD_TYPE: Gentoo
-- Found PkgConfig: x86_64-gentoo-linux-musl-pkg-config (found version "1.6.3") 
-- Looking for include file sys/statfs.h
-- Looking for include file sys/statfs.h - found
-- Looking for include file sys/param.h
-- Looking for include file sys/param.h - found
-- Looking for include file sys/inotify.h
-- Looking for include file sys/inotify.h - found
-- Looking for include file dirent.h
-- Looking for include file dirent.h - found
-- Looking for strndup
-- Looking for strndup - found
-- Looking for pipe2
-- Looking for pipe2 - found
-- Looking for O_CLOEXEC
-- Looking for O_CLOEXEC - found
-- Looking for statfs64
-- Looking for statfs64 - found
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for include file linux/soundcard.h
-- Looking for include file linux/soundcard.h - found
-- Looking for include file linux/soundcard.h
-- Looking for include file linux/soundcard.h - found
-- Looking for wsyncup in /usr/lib/libcurses.so
-- Looking for wsyncup in /usr/lib/libcurses.so - found
-- Looking for cbreak in /usr/lib/libncurses.so
-- Looking for cbreak in /usr/lib/libncurses.so - not found
-- Found Curses: /usr/lib/libncurses.so  
-- Looking for getnameinfo
-- Looking for getnameinfo - found
-- Looking for 5 include files netdb.h, ..., arpa/inet.h
-- Looking for 5 include files netdb.h, ..., arpa/inet.h - found
-- Looking for include file iconv.h
-- Looking for include file iconv.h - found
-- Looking for iconv
-- Looking for iconv - found
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Checking for one of the modules 'lua>=5.3;lua5.3;lua-5.3;lua53;lua5.2;lua-5.2;lua52'
-- Checking for module 'libpulse'
--   Found libpulse, version 13.0
Configuration for target conky
-- SOURCE_DIR = /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src
-- BINARY_DIR = /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build/src
-- INCLUDE_DIRECTORIES = /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include;/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build;/usr/include;/usr/include;/usr/include/lua5.3;/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build/data
-- LINK_LIBRARIES = /usr/lib/libncurses.so;/usr/lib/libtinfo.so;/usr/lib/libform.so;/usr/lib/libSM.so;/usr/lib/libICE.so;/usr/lib/libX11.so;/usr/lib/libXext.so;/usr/lib/libXdamage.so;/usr/lib/libXfixes.so;/usr/lib/libXext.so;lua5.3;m;pulse;toluapp_lib_static;tcp-portmon
-- <<< Gentoo configuration >>>
Build type      Gentoo
Install path    /usr
Compiler flags:
C               -std=c99
C++             -std=c++17
Linker flags:
Executable      -Wl,-O1 -Wl,--as-needed
Module          -Wl,-O1 -Wl,--as-needed
Shared          -Wl,-O1 -Wl,--as-needed

-- Configuring done
-- Generating done
-- Build files have been written to: /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build
>>> Source configured.
>>> Compiling source in /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6 ...
 * Working in BUILD_DIR: "/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build"
ninja -v -j6 -l0
[1/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/iconv_tools.cc.o -MF src/CMakeFiles/conky.dir/iconv_tools.cc.o.d -o src/CMakeFiles/conky.dir/iconv_tools.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/iconv_tools.cc
[2/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/nc.cc.o -MF src/CMakeFiles/conky.dir/nc.cc.o.d -o src/CMakeFiles/conky.dir/nc.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/nc.cc
[3/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/fonts.cc.o -MF src/CMakeFiles/conky.dir/fonts.cc.o.d -o src/CMakeFiles/conky.dir/fonts.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/fonts.cc
[4/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/x11.cc.o -MF src/CMakeFiles/conky.dir/x11.cc.o.d -o src/CMakeFiles/conky.dir/x11.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/x11.cc
/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/x11.cc:37:32: warning: unknown option after ‘#pragma GCC diagnostic’ kind [-Wpragmas]
[5/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/lua-config.cc.o -MF src/CMakeFiles/conky.dir/lua-config.cc.o.d -o src/CMakeFiles/conky.dir/lua-config.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/lua-config.cc
[6/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/data-source.cc.o -MF src/CMakeFiles/conky.dir/data-source.cc.o.d -o src/CMakeFiles/conky.dir/data-source.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/data-source.cc
[7/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/setting.cc.o -MF src/CMakeFiles/conky.dir/setting.cc.o.d -o src/CMakeFiles/conky.dir/setting.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/setting.cc
[8/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/update-cb.cc.o -MF src/CMakeFiles/conky.dir/update-cb.cc.o.d -o src/CMakeFiles/conky.dir/update-cb.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/update-cb.cc
[9/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/llua.cc.o -MF src/CMakeFiles/conky.dir/llua.cc.o.d -o src/CMakeFiles/conky.dir/llua.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/llua.cc
[10/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/users.cc.o -MF src/CMakeFiles/conky.dir/users.cc.o.d -o src/CMakeFiles/conky.dir/users.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/users.cc
[11/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/i8k.cc.o -MF src/CMakeFiles/conky.dir/i8k.cc.o.d -o src/CMakeFiles/conky.dir/i8k.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/i8k.cc
[12/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/sony.cc.o -MF src/CMakeFiles/conky.dir/sony.cc.o.d -o src/CMakeFiles/conky.dir/sony.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/sony.cc
[13/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/linux.cc.o -MF src/CMakeFiles/conky.dir/linux.cc.o.d -o src/CMakeFiles/conky.dir/linux.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/linux.cc
[14/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/mixer.cc.o -MF src/CMakeFiles/conky.dir/mixer.cc.o.d -o src/CMakeFiles/conky.dir/mixer.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/mixer.cc
[15/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/tcp-portmon.cc.o -MF src/CMakeFiles/conky.dir/tcp-portmon.cc.o.d -o src/CMakeFiles/conky.dir/tcp-portmon.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/tcp-portmon.cc
[16/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/tailhead.cc.o -MF src/CMakeFiles/conky.dir/tailhead.cc.o.d -o src/CMakeFiles/conky.dir/tailhead.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/tailhead.cc
[17/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/specials.cc.o -MF src/CMakeFiles/conky.dir/specials.cc.o.d -o src/CMakeFiles/conky.dir/specials.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/specials.cc
[18/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/temphelper.cc.o -MF src/CMakeFiles/conky.dir/temphelper.cc.o.d -o src/CMakeFiles/conky.dir/temphelper.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/temphelper.cc
[19/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/text_object.cc.o -MF src/CMakeFiles/conky.dir/text_object.cc.o.d -o src/CMakeFiles/conky.dir/text_object.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/text_object.cc
[20/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/timeinfo.cc.o -MF src/CMakeFiles/conky.dir/timeinfo.cc.o.d -o src/CMakeFiles/conky.dir/timeinfo.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/timeinfo.cc
[21/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/prioqueue.cc.o -MF src/CMakeFiles/conky.dir/prioqueue.cc.o.d -o src/CMakeFiles/conky.dir/prioqueue.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/prioqueue.cc
[22/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/algebra.cc.o -MF src/CMakeFiles/conky.dir/algebra.cc.o.d -o src/CMakeFiles/conky.dir/algebra.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/algebra.cc
[23/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/top.cc.o -MF src/CMakeFiles/conky.dir/top.cc.o.d -o src/CMakeFiles/conky.dir/top.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/top.cc
[24/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/proc.cc.o -MF src/CMakeFiles/conky.dir/proc.cc.o.d -o src/CMakeFiles/conky.dir/proc.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/proc.cc
[25/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/user.cc.o -MF src/CMakeFiles/conky.dir/user.cc.o.d -o src/CMakeFiles/conky.dir/user.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/user.cc
[26/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/luamm.cc.o -MF src/CMakeFiles/conky.dir/luamm.cc.o.d -o src/CMakeFiles/conky.dir/luamm.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/luamm.cc
[27/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/exec.cc.o -MF src/CMakeFiles/conky.dir/exec.cc.o.d -o src/CMakeFiles/conky.dir/exec.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/exec.cc
[28/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/fs.cc.o -MF src/CMakeFiles/conky.dir/fs.cc.o.d -o src/CMakeFiles/conky.dir/fs.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/fs.cc
[29/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/misc.cc.o -MF src/CMakeFiles/conky.dir/misc.cc.o.d -o src/CMakeFiles/conky.dir/misc.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/misc.cc
[30/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/net_stat.cc.o -MF src/CMakeFiles/conky.dir/net_stat.cc.o.d -o src/CMakeFiles/conky.dir/net_stat.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/net_stat.cc
[31/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/mail.cc.o -MF src/CMakeFiles/conky.dir/mail.cc.o.d -o src/CMakeFiles/conky.dir/mail.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/mail.cc
[32/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/template.cc.o -MF src/CMakeFiles/conky.dir/template.cc.o.d -o src/CMakeFiles/conky.dir/template.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/template.cc
[33/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/main.cc.o -MF src/CMakeFiles/conky.dir/main.cc.o.d -o src/CMakeFiles/conky.dir/main.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc
FAILED: src/CMakeFiles/conky.dir/main.cc.o 
/usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/main.cc.o -MF src/CMakeFiles/conky.dir/main.cc.o.d -o src/CMakeFiles/conky.dir/main.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc
/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc:51:10: fatal error: defconfig.h: No such file or directory
   51 | #include "defconfig.h"
      |          ^~~~~~~~~~~~~
compilation terminated.
distcc[18644] ERROR: compile /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc on hephaestus:3639 failed
distcc[18644] (dcc_build_somewhere) Warning: remote compilation of '/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc' failed, retrying locally
distcc[18644] Warning: failed to distribute /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc to hephaestus:3639, running locally instead
/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc:51:10: fatal error: defconfig.h: No such file or directory
   51 | #include "defconfig.h"
      |          ^~~~~~~~~~~~~
compilation terminated.
distcc[18644] ERROR: compile /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/main.cc on localhost failed
[34/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/mboxscan.cc.o -MF src/CMakeFiles/conky.dir/mboxscan.cc.o.d -o src/CMakeFiles/conky.dir/mboxscan.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/mboxscan.cc
[35/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/read_tcpip.cc.o -MF src/CMakeFiles/conky.dir/read_tcpip.cc.o.d -o src/CMakeFiles/conky.dir/read_tcpip.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/read_tcpip.cc
[36/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/scroll.cc.o -MF src/CMakeFiles/conky.dir/scroll.cc.o.d -o src/CMakeFiles/conky.dir/scroll.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/scroll.cc
[37/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -std=gnu++17 -MD -MT src/CMakeFiles/conky.dir/pulseaudio.cc.o -MF src/CMakeFiles/conky.dir/pulseaudio.cc.o.d -o src/CMakeFiles/conky.dir/pulseaudio.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/pulseaudio.cc
[38/60] /usr/lib/distcc/bin/x86_64-gentoo-linux-musl-g++ -D_LARGEFILE64_SOURCE -D_POSIX_C_SOURCE=200809L -Dtcp_portmon_EXPORTS -I/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/3rdparty/toluapp/include -I. -I/usr/include/lua5.3 -Idata  -std=c++17 -fPIC -std=gnu++17 -MD -MT src/CMakeFiles/tcp-portmon.dir/libtcp-portmon.cc.o -MF src/CMakeFiles/tcp-portmon.dir/libtcp-portmon.cc.o.d -o src/CMakeFiles/tcp-portmon.dir/libtcp-portmon.cc.o -c /var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6/src/libtcp-portmon.cc
ninja: build stopped: subcommand failed.
 * ERROR: app-admin/conky-1.11.6-r2::mjeveritt failed (compile phase):
 *   ninja -v -j6 -l0 failed
 * 
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 4388:  Called cmake_src_compile
 *   environment, line 2462:  Called cmake_build
 *   environment, line 2431:  Called eninja
 *   environment, line 2883:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 * 
 * If you need support, post the output of `emerge --info '=app-admin/conky-1.11.6-r2::mjeveritt'`,
 * the complete build log and the output of `emerge -pqv '=app-admin/conky-1.11.6-r2::mjeveritt'`.
 * The complete build log is located at '/var/log/portage/build/app-admin/conky-1.11.6-r2:20210713-224831.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/app-admin/conky-1.11.6-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-admin/conky-1.11.6-r2/temp/environment'.
 * Working directory: '/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6_build'
 * S: '/var/tmp/portage/app-admin/conky-1.11.6-r2/work/conky-1.11.6'

NB. This is not unique to v1.11.6, it just so happens this version is active/stable in Gentoo Linux at the time I am writing this, and build logs are readily available

mjeveritt commented 3 years ago

Manually running the text2c.sh script as per data/CMakeLists.txt, and creating the relevant header files, the build completes correctly, however, it's noticeable that main.cc is compiled -before- the text2c invocations triggered by CMake ! (further log to be re-uploaded)

arkamar commented 3 years ago

I heave the same problem for some time as well and I finally forced myself to look at it as I was curious why this affects only systems with musl libc and I found this. The default ninja target looks like this

build all: phony lua/all data/all doc/all 3rdparty/toluapp/all src/all tests/all

ninja on glibc system builds dependencies from left to right, therefore data/all, where defconfig.h and convertconf.h are generated, are built at the beginning and they are usually done before they are needed in src/all even for parallelize builds. However, on musl system it starts with src/all and because of the missing dependencies it obviously cannot locate those header files.

Anyway, I was curious what causes this difference in the build sequence and the reason is that ninja sorts dependency edges by memory address (a least in version 1.10.*) and I presume that the structures behind memory allocators in glibc and musl differs significantly :). This behavior of ninja was changed/fixed in PR https://github.com/ninja-build/ninja/pull/1866.

mjeveritt commented 3 years ago

@arkamar Dude, I owe you a few beers for this! Thanks! That's certainly a weird ole bug/feature .. but at least it's been found/fixed! Cheers! :beers:

arkamar commented 3 years ago

@mjeveritt you're welcome!