|
1 Patch origin: in-house |
|
2 Patch status: Solaris-specific; not suitable for upstream |
|
3 |
|
4 Fixes problem where APR-util Parfait build wouldn't analyze mysql and |
|
5 sqlite3 modules as apr_dbd_sqlite3.o.bc and apr_dbd_mysql.o.bc were |
|
6 removed here. |
|
7 |
|
8 It also creates bc equivalents for static library archives as used for |
|
9 linking Apache httpd binary. |
|
10 |
|
11 --- build/ltmain.sh |
|
12 +++ build/ltmain.sh |
|
13 @@ -7548,7 +7548,7 @@ |
|
14 tempremovelist=`$ECHO "$output_objdir/*"` |
|
15 for p in $tempremovelist; do |
|
16 case $p in |
|
17 - *.$objext | *.gcno) |
|
18 + *.$objext | *.$objext.bc | *.gcno) |
|
19 ;; |
|
20 $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) |
|
21 if test "X$precious_files_regex" != "X"; then |
|
22 @@ -9123,6 +9123,14 @@ |
|
23 func_append oldobjs " $func_extract_archives_result" |
|
24 fi |
|
25 |
|
26 + # Create also list of Parfait objects. |
|
27 + for obj in $oldobjs |
|
28 + do |
|
29 + if test -f $obj.bc; then |
|
30 + oldobjs_bc+=" $obj.bc" |
|
31 + fi |
|
32 + done |
|
33 + |
|
34 # POSIX demands no paths to be encoded in archives. We have |
|
35 # to avoid creating archives with duplicate basenames if we |
|
36 # might have to extract them afterwards, e.g., when creating a |
|
37 @@ -9170,12 +9178,19 @@ |
|
38 fi |
|
39 func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 |
|
40 tool_oldlib=$func_to_tool_file_result |
|
41 - eval cmds=\"$old_archive_cmds\" |
|
42 + if test -z "$oldobjs_bc"; then |
|
43 + eval cmds=\"$old_archive_cmds\" |
|
44 + else |
|
45 + eval cmds=\"$old_archive_cmds~$old_archive_bc_cmds\" |
|
46 + fi |
|
47 |
|
48 func_len " $cmds" |
|
49 len=$func_len_result |
|
50 if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then |
|
51 cmds=$old_archive_cmds |
|
52 + if test -n "$oldobjs_bc"; then |
|
53 + cmds+="~$old_archive_bc_cmds" |
|
54 + fi |
|
55 elif test -n "$archiver_list_spec"; then |
|
56 func_verbose "using command file archive linking..." |
|
57 for obj in $oldobjs |
|
58 --- build/libtool.m4 |
|
59 +++ build/libtool.m4 |
|
60 @@ -1465,6 +1465,7 @@ |
|
61 |
|
62 # Determine commands to create old-style static archives. |
|
63 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' |
|
64 +old_archive_bc_cmds='$AR $AR_FLAGS $oldlib.bc$oldobjs_bc' |
|
65 old_postinstall_cmds='chmod 644 $oldlib' |
|
66 old_postuninstall_cmds= |
|
67 |
|
68 @@ -1478,6 +1479,7 @@ |
|
69 ;; |
|
70 esac |
|
71 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" |
|
72 + old_archive_bc_cmds="$old_archive_bc_cmds~\$RANLIB \$tool_oldlib.bc" |
|
73 fi |
|
74 |
|
75 case $host_os in |
|
76 @@ -1490,6 +1492,8 @@ |
|
77 _LT_DECL([], [old_postuninstall_cmds], [2]) |
|
78 _LT_TAGDECL([], [old_archive_cmds], [2], |
|
79 [Commands used to build an old-style archive]) |
|
80 +_LT_TAGDECL([], [old_archive_bc_cmds], [2], |
|
81 + [Commands used to build an old-style archive from Parfait bc files]) |
|
82 _LT_DECL([], [lock_old_archive_extraction], [0], |
|
83 [Whether to use a lock for old archive extraction]) |
|
84 ])# _LT_CMD_OLD_ARCHIVE |