[haiku-development] Re: Build failure on Solaris host

Am 11.08.2010 um 23:57 schrieb François Revol:

Le 11 août 2010 à 23:33, Andreas Färber a écrit :

/export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/ regex/regex.c:65:21: regexec.c: Datei oder Verzeichnis nicht gefunden

Luckily many here speak german but it's better to use english when reporting errors ;)

Oops.

LC_ALL=C jam ...
should do it.

It's: No such file or directory
Therefore:

The headers and source files it complains about above are all present in src/system/libroot/glibc/regex. Might the recent glibc regex update require some path update somewhere?

Seems so.

jam -q libroot.so
and
jam -q kernel
both worked, it appears only an issue with cross-compiling on Cygwin and Solaris. The following keymap patch:

diff --git a/src/tools/keymap/Jamfile b/src/tools/keymap/Jamfile
index 9f0859a..c853a6d 100644
--- a/src/tools/keymap/Jamfile
+++ b/src/tools/keymap/Jamfile
@@ -11,6 +11,7 @@ local regexSources ;
 local storageSources ;

 if $(HOST_PLATFORM) = cygwin || $(HOST_PLATFORM) = sunos {
+ UseHeaders [ FDirName $(HAIKU_TOP) src system libroot posix glibc regex ] : true ;
        regexSources = regex.c ;
 }
 if $(HOST_PLATFORM) = haiku_host {

leads to:

Cc /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/ release/tools/keymap/regex.o In file included from /export/home/andreas/Haiku/haiku/src/system/ libroot/posix/glibc/regex/regex.c:61: /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.h: In function `bitset_not': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.h:695: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.h: In function `bitset_merge': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.h:703: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.h: In function `bitset_mask': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.h:711: warning: comparison between signed and unsigned In file included from /export/home/andreas/Haiku/haiku/src/system/ libroot/posix/glibc/regex/regex.c:63: /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.c: In function `re_string_reconstruct': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.c:678: warning: unused variable `prev_valid_len' /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.c: In function `re_dfa_add_node': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regex_internal.c:1399: warning: unused variable `type' In file included from /export/home/andreas/Haiku/haiku/src/system/ libroot/posix/glibc/regex/regex.c:64: /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `re_compile_pattern': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:225: error: `RE_NO_SUB' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:225: error: (Each undeclared identifier is reported only once /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:225: error: for each function it appears in.) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `re_compile_fastmap_iter': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:308: error: `RE_ICASE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:342: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:346: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `regcomp': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:486: error: `RE_ICASE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `free_dfa_content': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:593: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:596: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:611: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `re_compile_internal': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:780: error: `RE_ICASE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `init_word_char': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:932: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:933: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `analyze': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1130: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1133: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1136: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `optimize_subexps': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1261: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `lower_subexp': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1306: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `calc_inveclosure': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1579: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1582: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `calc_eclosure': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1611: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `peek_token': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:1934: error: `RE_CARET_ANCHORS_HERE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `parse': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:2072: error: `RE_CARET_ANCHORS_HERE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `parse_reg_exp': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:2110: error: `RE_CARET_ANCHORS_HERE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `parse_expression': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:2240: error: `RE_CONTEXT_INVALID_DUP' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `parse_sub_exp': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:2404: error: `RE_CARET_ANCHORS_HERE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c: In function `build_charclass': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regcomp.c:3473: error: `RE_ICASE' undeclared (first use in this function) In file included from /export/home/andreas/Haiku/haiku/src/system/ libroot/posix/glibc/regex/regex.c:65: /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `regexec': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:232: error: `REG_STARTEND' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:230: warning: unused variable `dfa' /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `re_search_stub': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:421: warning: unused variable `dfa' /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `re_copy_regs': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:524: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:539: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:549: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `re_search_internal': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:679: error: `RE_ICASE' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:742: warning: subscript has type `char' /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:874: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:892: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:920: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `set_regs': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:1444: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:1447: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `check_dst_limits_calc_pos_1': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:1945: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:1972: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `check_subexp_matching_top': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:2433: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `find_subexp_node': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:2860: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `check_arrival_add_next_nodes': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3040: warning: unused variable `err' /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `check_arrival_expand_ecl_sub': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3175: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `build_trtable': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3304: error: `bool' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3304: error: syntax error before "dests_node_malloced" /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3330: error: `dests_node_malloced' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3330: error: `true' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3370: error: `dest_states_malloced' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3441: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3472: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c: In function `group_nodes_into_DFAstates': /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3584: error: `bool' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3584: error: syntax error before "accepts_newline" /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3586: error: `accepts_newline' undeclared (first use in this function) /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3611: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3630: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3652: warning: comparison between signed and unsigned /export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/regex/ regexec.c:3660: warning: comparison between signed and unsigned

cc -O -Wall -Wno-trigraphs -Wmissing-prototypes -Wpointer-arith -Wcast- align -Wsign-compare -Wno-multichar -include BeOSBuildCompatibility.h - c "/export/home/andreas/Haiku/haiku/src/system/libroot/posix/glibc/ regex/regex.c" -DARCH_x86 -D_NO_INLINE_ASM -D__INTEL__ -D_GNU_SOURCE - D_FILE_OFFSET_BITS=64 -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS - DHAIKU_HOST_PLATFORM_SUNOS -I/export/home/andreas/Haiku/haiku/build/ user_config_headers -I/export/home/andreas/Haiku/haiku/build/ config_headers -I/export/home/andreas/Haiku/haiku/src/tools/keymap -I/ export/home/andreas/Haiku/haiku/generated-ppc/objects/common/tools/ keymap -I/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/ x86/common/tools/keymap -I/export/home/andreas/Haiku/haiku/generated- ppc/objects/haiku/ppc/common/tools/keymap -I/export/home/andreas/Haiku/ haiku/src/bin/keymap -I- -I/export/home/andreas/Haiku/haiku/headers/ build/private/shared -I/export/home/andreas/Haiku/haiku/headers/build/ private/storage -I/export/home/andreas/Haiku/haiku/src/system/libroot/ posix/glibc/regex -I/export/home/andreas/Haiku/haiku/headers/build/ host/sunos -I/export/home/andreas/Haiku/haiku/headers/build -I/export/ home/andreas/Haiku/haiku/headers/build/os -I/export/home/andreas/Haiku/ haiku/headers/build/os/app -I/export/home/andreas/Haiku/haiku/headers/ build/os/drivers -I/export/home/andreas/Haiku/haiku/headers/build/os/ kernel -I/export/home/andreas/Haiku/haiku/headers/build/os/interface - I/export/home/andreas/Haiku/haiku/headers/build/os/opengl -I/export/ home/andreas/Haiku/haiku/headers/build/os/storage -I/export/home/ andreas/Haiku/haiku/headers/build/os/support -o "/export/home/andreas/ Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/keymap/ regex.o" ;

...failed Cc /export/home/andreas/Haiku/haiku/generated-ppc/objects/ sunos/x86/release/tools/keymap/regex.o ...
...skipped <build>keymap for lack of <src!tools!keymap>regex.o...
...skipped <keymap>German for lack of <build>keymap...
...skipped <HaikuImage>haiku.image-copy-files-dummy-home/config/ settings-<keymap>German for lack of <keymap>German...
...skipped haiku.image for lack of <HaikuImage>haiku.image-copy-files...
...failed updating 1 target(s)...
...skipped 4 target(s)...
...updated 7 target(s)...

which I guess is a mismatch between the updated regex sources and the regex.h in build/host/cygwin. Unfortunately the updated headers/posix/ regex.h uses Haiku-specific types, so is unusable.

Andreas

Other related posts: