Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Closed
mjeveritt opened this issue Jul 27, 2021 · 4 comments · Fixed by #1207
Closed

Comments

@mjeveritt
Copy link

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
Copy link
Author

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 added a commit to arkamar/conky that referenced this issue Aug 3, 2021
This change corrects dependencies on generated defconfig.h and/or
convertconf.h header files because they must be generated before
compilation of conky.cc and main.cc if BUILD_BUILTIN_CONFIG and/or
BUILD_OLD_CONFIG are set.

Fixes: brndnmtthws#1118
@arkamar
Copy link
Contributor

arkamar commented Aug 3, 2021

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 ninja-build/ninja#1866.

@mjeveritt
Copy link
Author

@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! 🍻

@arkamar
Copy link
Contributor

arkamar commented Aug 4, 2021

@mjeveritt you're welcome!

brndnmtthws pushed a commit that referenced this issue Sep 10, 2022
This change corrects dependencies on generated defconfig.h and/or
convertconf.h header files because they must be generated before
compilation of conky.cc and main.cc if BUILD_BUILTIN_CONFIG and/or
BUILD_OLD_CONFIG are set.

Fixes: #1118
brndnmtthws pushed a commit that referenced this issue Sep 10, 2022
This change corrects dependencies on generated defconfig.h and/or
convertconf.h header files because they must be generated before
compilation of conky.cc and main.cc if BUILD_BUILTIN_CONFIG and/or
BUILD_OLD_CONFIG are set.

Fixes: #1118
brndnmtthws pushed a commit that referenced this issue Sep 10, 2022
This change corrects dependencies on generated defconfig.h and/or
convertconf.h header files because they must be generated before
compilation of conky.cc and main.cc if BUILD_BUILTIN_CONFIG and/or
BUILD_OLD_CONFIG are set.

Fixes: #1118
brndnmtthws pushed a commit that referenced this issue Sep 10, 2022
This change corrects dependencies on generated defconfig.h and/or
convertconf.h header files because they must be generated before
compilation of conky.cc and main.cc if BUILD_BUILTIN_CONFIG and/or
BUILD_OLD_CONFIG are set.

Fixes: #1118
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants