Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 884659 - app-arch/cpio-2.13-r4::gentoo_prefix: conftest.c:59:10: fatal error: sys/sysmacros.h: No such file or directory
Summary: app-arch/cpio-2.13-r4::gentoo_prefix: conftest.c:59:10: fatal error: sys/sysm...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: All OS X
: Normal normal (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords:
: 878841 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-12-07 09:19 UTC by Askar Bektassov
Modified: 2023-01-03 03:33 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log.bz2,547.70 KB, application/x-bzip2)
2022-12-07 11:37 UTC, Askar Bektassov
Details
config.log (config.log.bz2,280.19 KB, application/x-bzip2)
2022-12-07 11:38 UTC, Askar Bektassov
Details
correct build.log (build.log,9.47 KB, text/plain)
2022-12-07 18:29 UTC, Askar Bektassov
Details
correct config.log (config.log,83.69 KB, text/plain)
2022-12-07 18:29 UTC, Askar Bektassov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Askar Bektassov 2022-12-07 09:19:36 UTC
When configuration attempts testing major() macro, it refers to a header non-standard header sys/sysmacros.h.

Reproducible: Always

Steps to Reproduce:
MAKEOPTS="-j1" emerge app-arch/cpio
Actual Results:  
configure:8050: checking return type of major()
configure:8073: arm64-apple-darwin21-gcc -c  -O2 -pipe  conftest.c >&5
conftest.c:59:10: fatal error: sys/sysmacros.h: No such file or directory
   59 | #include <sys/sysmacros.h>
      |          ^~~~~~~~~~~~~~~~~
compilation terminated.

Expected Results:  
successful emerge

Seems to be the same issue that was resolved with https://bugs.gentoo.org/751511
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-12-07 09:21:19 UTC
Please always include the full build.log and emerge --info. In this case, we need config.log too.
Comment 2 Askar Bektassov 2022-12-07 11:37:13 UTC
Created attachment 840599 [details]
build.log
Comment 3 Askar Bektassov 2022-12-07 11:38:47 UTC
Created attachment 840601 [details]
config.log
Comment 4 Askar Bektassov 2022-12-07 11:40:25 UTC
(In reply to Sam James from comment #1)
> Please always include the full build.log and emerge --info. In this case, we
> need config.log too.

Sure, sorry for that.

askarbektassov@Askars-MBP ~ $ emerge --info
Portage 3.0.34 (python 3.10.4-final-0, prefix/darwin/macos/12.0/arm64/gcc, gcc-12.2.0, unavailable, 22.1.0 arm64)
=================================================================
System uname: macOS-13.0.1-arm64-64bit
Timestamp of repository gentoo_prefix: Tue, 06 Dec 2022 16:26:38 +0000
Head commit of repository gentoo_prefix: a1d3777d40e4887d2188b9ee3d5dc209d0774bb0
sh bash 5.2_p12
app-misc/pax-utils:        1.3.5::gentoo_prefix
app-shells/bash:           5.2_p12::gentoo_prefix
dev-lang/perl:             5.36.0-r1::gentoo_prefix
dev-lang/python:           3.10.4::gentoo_prefix
dev-util/cmake:            3.25.1::gentoo_prefix
dev-util/meson:            0.64.1::gentoo_prefix
sys-apps/baselayout:       2.9::gentoo_prefix
sys-devel/autoconf:        2.71-r5::gentoo_prefix
sys-devel/automake:        1.16.5::gentoo_prefix
sys-devel/binutils-config: 5.1-r5::gentoo_prefix
sys-devel/gcc:             12.2.0::gentoo_prefix
sys-devel/gcc-config:      2.7-r1::gentoo_prefix
sys-devel/libtool:         2.4.7::gentoo_prefix
sys-devel/make:            4.4::gentoo_prefix
Repositories:

gentoo_prefix
    location: /Users/askarbektassov/Gentoo/var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix
    priority: -1000
    sync-rsync-verify-metamanifest: no
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-max-age: 24
    sync-rsync-extra-opts:

a5kar
    location: /Users/askarbektassov/Gentoo/var/db/repos/a5kar
    masters: gentoo_prefix

ACCEPT_KEYWORDS="~x64-macos"
ACCEPT_LICENSE="@FREE"
CBUILD="arm64-apple-darwin21"
CFLAGS=" -O2 -pipe"
CHOST="arm64-apple-darwin21"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release"
CONFIG_SHELL="/Users/askarbektassov/Gentoo/bin/bash"
CXXFLAGS=" -O2 -pipe"
DISTDIR="/Users/askarbektassov/Gentoo/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS=""
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live case-insensitive-fs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news nostrip parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sfperms strict unknown-features-warn unmerge-logs unmerge-orphans unprivileged"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distfiles.prefix.bitzolder.nl/prefix"
LDFLAGS="-Wl,-dead_strip_dylibs"
LEX="flex"
MAKEOPTS="-j6"
PKGDIR="/Users/askarbektassov/Gentoo/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/Users/askarbektassov/Gentoo/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/Users/askarbektassov/Gentoo/var/tmp"
SHELL="/Users/askarbektassov/Gentoo/bin/zsh"
USE="aqua arm64-macos bzip2 coreaudio gdbm ipv6 libglvnd ncurses nls nptl objc objc++ prefix prefix-guest readline ssl test-rust unicode x64-macos zlib" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="Darwin" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="Darwin" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" RUBY_TARGETS="ruby27" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LANG, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-12-07 16:19:16 UTC
build.log & config.log seem to be for dev-lang/R, but cpio?
Comment 6 Askar Bektassov 2022-12-07 18:28:17 UTC
Comment on attachment 840601 [details]
config.log

Please ignore, wrong attachment
Comment 7 Askar Bektassov 2022-12-07 18:28:33 UTC
Comment on attachment 840601 [details]
config.log

Please ignore, wrong attachment
Comment 8 Askar Bektassov 2022-12-07 18:29:04 UTC
Created attachment 840649 [details]
correct build.log
Comment 9 Askar Bektassov 2022-12-07 18:29:43 UTC
Created attachment 840651 [details]
correct config.log
Comment 10 Askar Bektassov 2022-12-11 21:53:07 UTC
I guess by removing reference to sysmacros.h from configure on macOS resolves the issue.

--- cpio-2.13.old/configure	2022-12-11 21:46:16.659992978 +0000
+++ cpio-2.13/configure	2022-12-11 21:49:28.946482853 +0000
@@ -8058,7 +8058,6 @@
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */

-#include <sys/sysmacros.h>
 #include <sys/types.h>


@@ -8100,7 +8099,6 @@
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */

-#include <sys/sysmacros.h>
 #include <sys/types.h>
Comment 11 Fabian Groffen gentoo-dev 2022-12-13 15:40:33 UTC
*** Bug 878841 has been marked as a duplicate of this bug. ***
Comment 12 Fabian Groffen gentoo-dev 2022-12-25 11:11:30 UTC
this is introduced by cpio-2.13-sysmacros-glibc-2.26.patch

That patch should've used #ifdef HAVE_SYS_SYSMACROS_H, which was checked for before this check.
Comment 13 Fabian Groffen gentoo-dev 2022-12-25 11:21:35 UTC
@base-system: ok to push this patch?

--- a/app-arch/cpio/files/cpio-2.13-sysmacros-glibc-2.26.patch
+++ b/app-arch/cpio/files/cpio-2.13-sysmacros-glibc-2.26.patch
@@ -1,10 +1,12 @@
 --- a/am/ax_compile_check_rettype.m4
 +++ b/am/ax_compile_check_rettype.m4
-@@ -70,6 +70,7 @@ AC_CACHE_VAL(AC_CV_NAME,
+@@ -70,6 +70,9 @@ AC_CACHE_VAL(AC_CV_NAME,
  [for ac_type in char short int long "long long" $4
   do 
    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
++#ifdef HAVE_SYS_SYSMACROS_H
 +#include <sys/sysmacros.h>
++#endif
  #include <sys/types.h>
  $3
  ]], [[switch (0) case 0: case (sizeof ($1($2)) == sizeof ($ac_type)):;]])], [AC_CV_NAME=$ac_type])

I've tested this on glibc-2.36 and musl-1.2.3 (next to macOS)
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-12-25 14:35:59 UTC
Go for it! I was about to say about pregen configure but we already call autoreconf for the CVE patch and I'd forgot about that. Thank you!
Comment 15 Fabian Groffen gentoo-dev 2022-12-26 08:59:11 UTC
I see I accidentially committed and pushed this yesterday in 51612c48d72f36fc6646a75f43827daa085dc5df.  My apologies.
Comment 16 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-01-03 03:33:11 UTC
HAVE_SYS_SYSMACROS_H didn't seem to exist by the time of the check, so this resulted in an -Wimplicit-function-declaration warning (fatal with newer compilers).

Fixed in:

commit 7b3b13e2b23c0df42ee8b478c2506e2ca6d99184
Author: Sam James <sam@gentoo.org>
Date:   Mon Jan 2 05:59:41 2023 +0000

    app-arch/cpio: fix configure w/ clang 16

    Signed-off-by: Sam James <sam@gentoo.org>