Opened 6 years ago
Closed 6 years ago
#14386 closed bug (fixed)
libsolv fails to build, breaks native Haiku build
Reported by: | cb88 | Owned by: | bonefish |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Build System | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
It may have something to do with this commit? Note the build continues if I revert this not sure if that is correct however.
/boot/home/haiku/generated/download/libsol 100%[=======================================================================================>] 430.66K 458KB/s in 0.9s 2018-08-22 22:01:47 (458 KB/s) - ‘/boot/home/haiku/generated/download/libsolv_source-0.3.0_haiku_2014_12_22-2-source.hpkg’ saved [440997/440997] ExtractHPKGArchive1 /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source MkDir1 /boot/home/haiku/generated/objects/common/build MkDir1 /boot/home/haiku/generated/objects/common/build/libsolv GenerateLibsolvVersionHeader /boot/home/haiku/generated/objects/common/build/libsolv/solvversion.h Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/solv_xfopen.o /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/solv_xfopen.c:8: warning: `_GNU_SOURCE' redefined /boot/home/haiku/*Initialization*:1: warning: this is the location of the previous definition /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/solv_xfopen.c: In function `cookieopen': /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/solv_xfopen.c:41: warning: assignment from incompatible pointer type /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/solv_xfopen.c:43: warning: assignment from incompatible pointer type /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/solv_xfopen.c:44: warning: assignment from incompatible pointer type Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/testcase.o C++ /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repo_haiku.o /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/repo_haiku.cpp: In function `void add_resolvable_expressions(Repo *, Offset &, const BObjectList<BPackageKit::BPackageResolvableExpression> &)': /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/ext/repo_haiku.cpp:96: warning: enumeration value `B_PACKAGE_RESOLVABLE_OP_ENUM_COUNT' not handled in switch Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/bitmap.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/poolarch.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/poolvendor.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/poolid.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/strpool.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/dirpool.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/solver.o /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c: In function `solver_calculate_multiversionmap': /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c:2692: warning: suggest explicit braces to avoid ambiguous `else' /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c: In function `solver_solve': /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c:3414: warning: suggest explicit braces to avoid ambiguous `else' /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c:3482: warning: suggest explicit braces to avoid ambiguous `else' /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c: In function `pool_job2solvables': /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/solver.c:4177: warning: suggest explicit braces to avoid ambiguous `else' Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/solverdebug.o ...on 200th target... Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repo_solv.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repo_write.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/evr.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/pool.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/queue.o Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repo.o /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/repo.c:15: warning: `_GNU_SOURCE' redefined /boot/home/haiku/*Initialization*:1: warning: this is the location of the previous definition Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repodata.o /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/repodata.c:17: warning: `_GNU_SOURCE' redefined /boot/home/haiku/*Initialization*:1: warning: this is the location of the previous definition /boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/repodata.c:247: conflicting types for `strchrnul' /boot/system/develop/headers/posix/string.h:44: previous declaration of `strchrnul' gcc -O2 -Wall -Wno-trigraphs -Wmissing-prototypes -Wpointer-arith -Wcast-align -Wsign-compare -Wno-multichar -include /boot/home/haiku/headers/build/HaikuBuildCompatibility.h -Wno-sign-compare -Wno-missing-prototypes -fPIC -c "/boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src/repodata.c" -DLIBSOLV_INTERNAL -DHAIKU -DENABLE_HAIKU -DVERSION=\"0.3.0\" -D_GNU_SOURCE -DHAVE_FOPENCOOKIE -DARCH_x86 -D_NO_INLINE_ASM -D__NO_INLINE__ -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAIKU_HOST_USE_XATTR -DHAIKU_HOST_PLATFORM_HAIKU -DHAIKU_PACKAGING_ARCH=\"x86_gcc2\" -I/boot/home/haiku/build/user_config_headers -I/boot/home/haiku/build/config_headers -Isrc/build/libsolv -I/boot/home/haiku/generated/objects/common/build/libsolv -I/boot/home/haiku/generated/objects/haiku_host/x86_gcc2/common/build/libsolv -I/boot/home/haiku/generated/objects/haiku/x86_gcc2/common/build/libsolv -I/boot/home/haiku/generated/build_packages/libsolv_source-0.3.0_haiku_2014_12_22-2-source/develop/sources/libsolv-0.3.0_haiku_2014_12_22-2/sources/src -I- -I/boot/home/haiku/headers/build/host/haiku_host -o "/boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repodata.o" ; ...failed Cc /boot/home/haiku/generated/objects/haiku_host/x86_gcc2/release/build/libsolv/repodata.o ... BUILD FAILURE: ...failed updating 1 target(s)... ...skipped 8 target(s)... ...updated 205 target(s)...
Change History (4)
comment:1 by , 6 years ago
comment:2 by , 6 years ago
I checked your hunch that HOST_PLATFORM might be undefined.. I mentioned this on IRC just copying here.
but echo "$(HOST_PLATFORM)" ; prints haiku_host just above the first switch statement that uses it in that Jamfile.
comment:3 by , 6 years ago
Note HAVE_STRCHRNUL is not defined for the case where HOST_PLATFORM is haiku_host
I added it to the haiku_host case and it seems to build now...
comment:4 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Our strchrnul is protected by _GNU_SOURCE, so it makes sense that it wasn't visible before, but now it is. And we should set HAVE_STRCHRNUL accordingly.
Fixed in hrev52266.
The problem appears to be that HAVE_STRCHRNUL is not defined when the libsolv jamfile clearly defines it. No idea what's up with that.