Skip to content

Commit fa48de0

Browse files
author
Marc Stern
authored
Merge pull request #3094 from airween/v2/buildmacros
fix: Replace obsolote macros
2 parents 6b8956e + 1401ad9 commit fa48de0

File tree

10 files changed

+239
-34
lines changed

10 files changed

+239
-34
lines changed

build/compile

Lines changed: 227 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
#! /bin/sh
2-
# Wrapper for compilers which do not understand `-c -o'.
2+
# Wrapper for compilers which do not understand '-c -o'.
33

4-
scriptversion=2005-05-14.22
4+
scriptversion=2018-03-07.03; # UTC
55

6-
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
6+
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
77
# Written by Tom Tromey <tromey@cygnus.com>.
88
#
99
# This program is free software; you can redistribute it and/or modify
@@ -17,8 +17,7 @@ scriptversion=2005-05-14.22
1717
# GNU General Public License for more details.
1818
#
1919
# You should have received a copy of the GNU General Public License
20-
# along with this program; if not, write to the Free Software
21-
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
2221

2322
# As a special exception to the GNU General Public License, if you
2423
# distribute this file as part of a program that contains a
@@ -29,21 +28,224 @@ scriptversion=2005-05-14.22
2928
# bugs to <bug-automake@gnu.org> or send patches to
3029
# <automake-patches@gnu.org>.
3130

31+
nl='
32+
'
33+
34+
# We need space, tab and new line, in precisely that order. Quoting is
35+
# there to prevent tools from complaining about whitespace usage.
36+
IFS=" "" $nl"
37+
38+
file_conv=
39+
40+
# func_file_conv build_file lazy
41+
# Convert a $build file to $host form and store it in $file
42+
# Currently only supports Windows hosts. If the determined conversion
43+
# type is listed in (the comma separated) LAZY, no conversion will
44+
# take place.
45+
func_file_conv ()
46+
{
47+
file=$1
48+
case $file in
49+
/ | /[!/]*) # absolute file, and not a UNC file
50+
if test -z "$file_conv"; then
51+
# lazily determine how to convert abs files
52+
case `uname -s` in
53+
MINGW*)
54+
file_conv=mingw
55+
;;
56+
CYGWIN* | MSYS*)
57+
file_conv=cygwin
58+
;;
59+
*)
60+
file_conv=wine
61+
;;
62+
esac
63+
fi
64+
case $file_conv/,$2, in
65+
*,$file_conv,*)
66+
;;
67+
mingw/*)
68+
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
69+
;;
70+
cygwin/* | msys/*)
71+
file=`cygpath -m "$file" || echo "$file"`
72+
;;
73+
wine/*)
74+
file=`winepath -w "$file" || echo "$file"`
75+
;;
76+
esac
77+
;;
78+
esac
79+
}
80+
81+
# func_cl_dashL linkdir
82+
# Make cl look for libraries in LINKDIR
83+
func_cl_dashL ()
84+
{
85+
func_file_conv "$1"
86+
if test -z "$lib_path"; then
87+
lib_path=$file
88+
else
89+
lib_path="$lib_path;$file"
90+
fi
91+
linker_opts="$linker_opts -LIBPATH:$file"
92+
}
93+
94+
# func_cl_dashl library
95+
# Do a library search-path lookup for cl
96+
func_cl_dashl ()
97+
{
98+
lib=$1
99+
found=no
100+
save_IFS=$IFS
101+
IFS=';'
102+
for dir in $lib_path $LIB
103+
do
104+
IFS=$save_IFS
105+
if $shared && test -f "$dir/$lib.dll.lib"; then
106+
found=yes
107+
lib=$dir/$lib.dll.lib
108+
break
109+
fi
110+
if test -f "$dir/$lib.lib"; then
111+
found=yes
112+
lib=$dir/$lib.lib
113+
break
114+
fi
115+
if test -f "$dir/lib$lib.a"; then
116+
found=yes
117+
lib=$dir/lib$lib.a
118+
break
119+
fi
120+
done
121+
IFS=$save_IFS
122+
123+
if test "$found" != yes; then
124+
lib=$lib.lib
125+
fi
126+
}
127+
128+
# func_cl_wrapper cl arg...
129+
# Adjust compile command to suit cl
130+
func_cl_wrapper ()
131+
{
132+
# Assume a capable shell
133+
lib_path=
134+
shared=:
135+
linker_opts=
136+
for arg
137+
do
138+
if test -n "$eat"; then
139+
eat=
140+
else
141+
case $1 in
142+
-o)
143+
# configure might choose to run compile as 'compile cc -o foo foo.c'.
144+
eat=1
145+
case $2 in
146+
*.o | *.[oO][bB][jJ])
147+
func_file_conv "$2"
148+
set x "$@" -Fo"$file"
149+
shift
150+
;;
151+
*)
152+
func_file_conv "$2"
153+
set x "$@" -Fe"$file"
154+
shift
155+
;;
156+
esac
157+
;;
158+
-I)
159+
eat=1
160+
func_file_conv "$2" mingw
161+
set x "$@" -I"$file"
162+
shift
163+
;;
164+
-I*)
165+
func_file_conv "${1#-I}" mingw
166+
set x "$@" -I"$file"
167+
shift
168+
;;
169+
-l)
170+
eat=1
171+
func_cl_dashl "$2"
172+
set x "$@" "$lib"
173+
shift
174+
;;
175+
-l*)
176+
func_cl_dashl "${1#-l}"
177+
set x "$@" "$lib"
178+
shift
179+
;;
180+
-L)
181+
eat=1
182+
func_cl_dashL "$2"
183+
;;
184+
-L*)
185+
func_cl_dashL "${1#-L}"
186+
;;
187+
-static)
188+
shared=false
189+
;;
190+
-Wl,*)
191+
arg=${1#-Wl,}
192+
save_ifs="$IFS"; IFS=','
193+
for flag in $arg; do
194+
IFS="$save_ifs"
195+
linker_opts="$linker_opts $flag"
196+
done
197+
IFS="$save_ifs"
198+
;;
199+
-Xlinker)
200+
eat=1
201+
linker_opts="$linker_opts $2"
202+
;;
203+
-*)
204+
set x "$@" "$1"
205+
shift
206+
;;
207+
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
208+
func_file_conv "$1"
209+
set x "$@" -Tp"$file"
210+
shift
211+
;;
212+
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
213+
func_file_conv "$1" mingw
214+
set x "$@" "$file"
215+
shift
216+
;;
217+
*)
218+
set x "$@" "$1"
219+
shift
220+
;;
221+
esac
222+
fi
223+
shift
224+
done
225+
if test -n "$linker_opts"; then
226+
linker_opts="-link$linker_opts"
227+
fi
228+
exec "$@" $linker_opts
229+
exit 1
230+
}
231+
232+
eat=
233+
32234
case $1 in
33235
'')
34-
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
236+
echo "$0: No command. Try '$0 --help' for more information." 1>&2
35237
exit 1;
36238
;;
37239
-h | --h*)
38240
cat <<\EOF
39241
Usage: compile [--help] [--version] PROGRAM [ARGS]
40242
41-
Wrapper for compilers which do not understand `-c -o'.
42-
Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
243+
Wrapper for compilers which do not understand '-c -o'.
244+
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
43245
arguments, and rename the output as expected.
44246
45247
If you are trying to build a whole package this is not the
46-
right script to run: please start by reading the file `INSTALL'.
248+
right script to run: please start by reading the file 'INSTALL'.
47249
48250
Report bugs to <bug-automake@gnu.org>.
49251
EOF
@@ -53,11 +255,14 @@ EOF
53255
echo "compile $scriptversion"
54256
exit $?
55257
;;
258+
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
259+
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
260+
func_cl_wrapper "$@" # Doesn't return...
261+
;;
56262
esac
57263

58264
ofile=
59265
cfile=
60-
eat=
61266

62267
for arg
63268
do
@@ -66,8 +271,8 @@ do
66271
else
67272
case $1 in
68273
-o)
69-
# configure might choose to run compile as `compile cc -o foo foo.c'.
70-
# So we strip `-o arg' only if arg is an object.
274+
# configure might choose to run compile as 'compile cc -o foo foo.c'.
275+
# So we strip '-o arg' only if arg is an object.
71276
eat=1
72277
case $2 in
73278
*.o | *.obj)
@@ -94,22 +299,22 @@ do
94299
done
95300

96301
if test -z "$ofile" || test -z "$cfile"; then
97-
# If no `-o' option was seen then we might have been invoked from a
302+
# If no '-o' option was seen then we might have been invoked from a
98303
# pattern rule where we don't need one. That is ok -- this is a
99304
# normal compilation that the losing compiler can handle. If no
100-
# `.c' file was seen then we are probably linking. That is also
305+
# '.c' file was seen then we are probably linking. That is also
101306
# ok.
102307
exec "$@"
103308
fi
104309

105310
# Name of file we expect compiler to create.
106-
cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
311+
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
107312

108313
# Create the lock directory.
109-
# Note: use `[/.-]' here to ensure that we don't use the same name
314+
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
110315
# that we are using for the .o file. Also, base the name on the expected
111316
# object file name, since that is what matters with a parallel build.
112-
lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
317+
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
113318
while true; do
114319
if mkdir "$lockdir" >/dev/null 2>&1; then
115320
break
@@ -124,9 +329,9 @@ trap "rmdir '$lockdir'; exit 1" 1 2 15
124329
ret=$?
125330

126331
if test -f "$cofile"; then
127-
mv "$cofile" "$ofile"
332+
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
128333
elif test -f "${cofile}bj"; then
129-
mv "${cofile}bj" "$ofile"
334+
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
130335
fi
131336

132337
rmdir "$lockdir"
@@ -135,8 +340,9 @@ exit $ret
135340
# Local Variables:
136341
# mode: shell-script
137342
# sh-indentation: 2
138-
# eval: (add-hook 'write-file-hooks 'time-stamp)
343+
# eval: (add-hook 'before-save-hook 'time-stamp)
139344
# time-stamp-start: "scriptversion="
140345
# time-stamp-format: "%:y-%02m-%02d.%02H"
141-
# time-stamp-end: "$"
346+
# time-stamp-time-zone: "UTC0"
347+
# time-stamp-end: "; # UTC"
142348
# End:

build/find_apr.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ AC_DEFUN([CHECK_APR],
1818
1919
AC_ARG_WITH(
2020
apr,
21-
[AC_HELP_STRING([--with-apr=PATH],[Path to apr prefix or config script])],
21+
[AS_HELP_STRING([--with-apr=PATH],[Path to apr prefix or config script])],
2222
[test_paths="${with_apr}"],
2323
[test_paths="/usr/local/libapr /usr/local/apr /usr/local /opt/libapr /opt/apr /opt /usr"])
2424

build/find_apu.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ AC_DEFUN([CHECK_APU],
1818
1919
AC_ARG_WITH(
2020
apu,
21-
[AC_HELP_STRING([--with-apu=PATH],[Path to apu prefix or config script])],
21+
[AS_HELP_STRING([--with-apu=PATH],[Path to apu prefix or config script])],
2222
[test_paths="${with_apu}"],
2323
[test_paths="/usr/local/libapr-util /usr/local/apr-util /usr/local/libapu /usr/local/apu /usr/local/apr /usr/local /opt/libapr-util /opt/apr-util /opt/libapu /opt/apu /opt /usr"])
2424

build/find_curl.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ AC_DEFUN([CHECK_CURL],
1818
1919
AC_ARG_WITH(
2020
curl,
21-
[AC_HELP_STRING([--with-curl=PATH],[Path to curl prefix or config script])],
21+
[AS_HELP_STRING([--with-curl=PATH],[Path to curl prefix or config script])],
2222
[test_paths="${with_curl}"],
2323
[test_paths="/usr/local/libcurl /usr/local/curl /usr/local /opt/libcurl /opt/curl /opt /usr"])
2424

build/find_lua.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ LUA_SONAMES="so la sl dll dylib a"
2121
2222
AC_ARG_WITH(
2323
lua,
24-
[AC_HELP_STRING([--with-lua=PATH],[Path to lua prefix or config script])]
24+
[AS_HELP_STRING([--with-lua=PATH],[Path to lua prefix or config script])]
2525
,, with_lua=yes)
2626
2727
AS_CASE(["${with_lua}"],

build/find_pcre.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ AC_DEFUN([CHECK_PCRE],
1717
1818
AC_ARG_WITH(
1919
pcre,
20-
[AC_HELP_STRING([--with-pcre=PATH],[Path to pcre prefix or config script])],
20+
[AS_HELP_STRING([--with-pcre=PATH],[Path to pcre prefix or config script])],
2121
[test_paths="${with_pcre}"],
2222
[test_paths="/usr/local/libpcre /usr/local/pcre /usr/local /opt/libpcre /opt/pcre /opt /usr"])
2323

build/find_pcre2.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ AC_DEFUN([CHECK_PCRE2],
1717
1818
AC_ARG_WITH(
1919
pcre2,
20-
[AC_HELP_STRING([--with-pcre2=PATH],[Path to pcre2 prefix or config script])],
20+
[AS_HELP_STRING([--with-pcre2=PATH],[Path to pcre2 prefix or config script])],
2121
, with_pcre2=no)
2222
2323
AS_CASE(["${with_pcre2}"],

build/find_ssdeep.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ SSDEEP_LDADD=""
1313
1414
AC_ARG_WITH(
1515
ssdeep,
16-
[AC_HELP_STRING([--with-ssdeep=PATH],[Path to ssdeep prefix])]
16+
[AS_HELP_STRING([--with-ssdeep=PATH],[Path to ssdeep prefix])]
1717
,, with_ssdeep=yes)
1818
1919
AS_CASE(["${with_ssdeep}"],

0 commit comments

Comments
 (0)