Hey,
Here is a patch to make libtool support the cegcc compiler. The patch is
made wrt the latest cvs.
best regards
Vincent Torri
? libtool_cegcc.diff
Index: ChangeLog
===================================================================
RCS file: /sources/libtool/libtool/ChangeLog,v
retrieving revision 1.2634
diff -u -r1.2634 ChangeLog
--- ChangeLog 11 Apr 2008 17:21:54 -0000 1.2634
+++ ChangeLog 13 Apr 2008 21:47:06 -0000
@@ -1,3 +1,11 @@
+2008-04-13 Vincent Torri <doursse at users dot sf dot net>
+
+ Add cegcc support
+ * libltdl/config/ltmain.m4sh:
+ * libltdl/m4/libtool.m4:
+ * libltdl/m4/ltoptions.m4:
+ add 'cegcc' when needed
+
2008-04-11 Eric Blake <[EMAIL PROTECTED]>
Fix usage of setmode without declaration on cygwin.
Index: libltdl/config/ltmain.m4sh
===================================================================
RCS file: /sources/libtool/libtool/libltdl/config/ltmain.m4sh,v
retrieving revision 1.106
diff -u -r1.106 ltmain.m4sh
--- libltdl/config/ltmain.m4sh 11 Apr 2008 17:21:55 -0000 1.106
+++ libltdl/config/ltmain.m4sh 13 Apr 2008 21:47:08 -0000
@@ -363,7 +363,7 @@
case $host in
- *cygwin* | *mingw* | *pw32*)
+ *cygwin* | *mingw* | *pw32* | *cegcc)
# don't eliminate duplications in $postdeps and $predeps
opt_duplicate_compiler_generated_deps=:
;;
@@ -836,7 +836,7 @@
# On Cygwin there's no "real" PIC flag so we must build both object
types
case $host_os in
- cygwin* | mingw* | pw32* | os2*)
+ cygwin* | mingw* | pw32* | os2* | cegcc)
pic_mode=default
;;
esac
@@ -1608,7 +1608,7 @@
'exit $?'
tstripme="$stripme"
case $host_os in
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
case $realname in
*.dll.a)
tstripme=""
@@ -1714,7 +1714,7 @@
# Do a test to see if this is really a libtool program.
case $host in
- *cygwin*|*mingw*)
+ *cygwin* | *mingw* | *cegcc)
if func_ltwrapper_executable_p "$file"; then
func_ltwrapper_scriptname "$file"
wrapper=$func_ltwrapper_scriptname_result
@@ -1920,7 +1920,7 @@
$RM $export_symbols
eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.*
\(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
eval 'cat "$export_symbols" >>
"$output_objdir/$outputname.def"'
;;
@@ -1932,7 +1932,7 @@
eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" >
"$nlist"T'
eval '$MV "$nlist"T "$nlist"'
case $host in
- *cygwin | *mingw* )
+ *cygwin | *mingw* | *cegcc )
eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
;;
@@ -1988,7 +1988,7 @@
} lt_dlsymlist;
"
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
$ECHO >> "$output_objdir/$my_dlsyms" "\
/* DATA imports from DLLs on WIN32 con't be const, because
runtime relocations are performed -- see ld's documentation
@@ -2074,7 +2074,7 @@
# Transform the symbol file into the correct name.
symfileobj="$output_objdir/${my_outputname}S.$objext"
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
if test -f "$output_objdir/$my_outputname.def"; then
compile_command=`$ECHO "X$compile_command" | $Xsed -e
"[EMAIL PROTECTED]@%$output_objdir/$my_outputname.def $symfileobj%"`
finalize_command=`$ECHO "X$finalize_command" | $Xsed -e
"[EMAIL PROTECTED]@%$output_objdir/$my_outputname.def $symfileobj%"`
@@ -2449,7 +2449,7 @@
"
case $host in
# Backslashes separate directories on plain windows
- *-*-mingw | *-*-os2*)
+ *-*-mingw | *-*-os2* | *-cegcc)
$ECHO "\
exec \"\$progdir\\\\\$program\" \${1+\"[EMAIL PROTECTED]"}
"
@@ -2654,7 +2654,7 @@
{
EOF
case "$host" in
- *mingw* | *cygwin* )
+ *mingw* | *cygwin* | *cegcc )
# make stdout use "unix" line endings
echo " setmode(1,_O_BINARY);"
;;
@@ -2731,7 +2731,7 @@
case $host_os in
- mingw*)
+ mingw* | cegcc)
cat <<"EOF"
{
char* p;
@@ -2770,7 +2770,7 @@
EOF
case $host_os in
- mingw*)
+ mingw* | cegcc)
cat <<EOF
/* execv doesn't actually work on mingw as expected on unix */
rval = _spawnv (_P_WAIT, "$lt_newargv0", (const char * const *)
newargz);
@@ -3076,7 +3076,7 @@
{
$opt_debug
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc)
# It is impossible to link a dll without this setting, and
# we shouldn't force the makefile maintainer to figure out
# which system we are compiling for in order to pass an extra
@@ -3537,7 +3537,7 @@
;;
esac
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc)
testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`
case :$dllsearchpath: in
*":$dir:"*) ;;
@@ -3555,7 +3555,7 @@
-l*)
if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc)
# These systems don't actually have a C or math library (as
such)
continue
;;
@@ -3632,7 +3632,7 @@
-no-install)
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* |
*-cegcc)
# The PATH hackery in wrapper scripts is required on Windows
# and Darwin in order for the loader to find any dlls it needs.
func_warning "\`-no-install' is ignored for $host"
@@ -4589,7 +4589,7 @@
if test -n "$library_names" &&
{ test "$use_static_libs" = no || test -z "$old_library"; };
then
case $host in
- *cygwin* | *mingw*)
+ *cygwin* | *mingw* | *cegcc)
# No point in relinking DLLs because paths are not encoded
notinst_deplibs="$notinst_deplibs $lib"
need_relink=no
@@ -4659,7 +4659,7 @@
elif test -n "$soname_spec"; then
# bleh windows
case $host in
- *cygwin* | mingw*)
+ *cygwin* | mingw* | *cegcc)
major=`expr $current - $age`
versuffix="-$major"
;;
@@ -5498,7 +5498,7 @@
if test "$build_libtool_libs" = yes; then
if test -n "$rpath"; then
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* |
*-cegcc)
# these systems don't actually have a c library (as such)!
;;
*-*-rhapsody* | *-*-darwin1.[012])
@@ -5985,7 +5985,7 @@
orig_export_symbols=
case $host_os in
- cygwin* | mingw*)
+ cygwin* | mingw* | cegcc)
if test -n "$export_symbols" && test -z "$export_symbols_regex";
then
# exporting using user supplied symfile
if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
@@ -6599,7 +6599,7 @@
esac
fi
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc)
testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
case :$dllsearchpath: in
*":$libdir:"*) ;;
@@ -6671,7 +6671,7 @@
wrappers_required=yes
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
if test "$build_libtool_libs" != yes; then
wrappers_required=no
fi
@@ -6817,7 +6817,7 @@
*) exeext= ;;
esac
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
func_dirname_and_basename "$output" "" "."
output_name=$func_basename_result
output_path=$func_dirname_result
@@ -7109,7 +7109,7 @@
# place dlname in correct position for cygwin
tdlname=$dlname
case $host,$output,$installed,$module,$dlname in
- *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll)
tdlname=../bin/$dlname ;;
+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll |
*cegcc,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
esac
$ECHO > $output "\
# $outputname - a libtool library file
Index: libltdl/m4/libtool.m4
===================================================================
RCS file: /sources/libtool/libtool/libltdl/m4/libtool.m4,v
retrieving revision 1.148
diff -u -r1.148 libtool.m4
--- libltdl/m4/libtool.m4 10 Apr 2008 21:18:02 -0000 1.148
+++ libltdl/m4/libtool.m4 13 Apr 2008 21:47:11 -0000
@@ -1503,7 +1503,7 @@
lt_cv_sys_max_cmd_len=-1;
;;
- cygwin* | mingw*)
+ cygwin* | mingw* | cegcc)
# On Win9x/ME, this test blows up -- it succeeds, but takes
# about 5 minutes as the teststring grows exponentially.
# Worse, since 9x/ME are not pre-emptively multitasking,
@@ -1729,7 +1729,7 @@
lt_cv_dlopen_self=yes
;;
- mingw* | pw32*)
+ mingw* | pw32* | cegcc)
lt_cv_dlopen="LoadLibrary"
lt_cv_dlopen_libs=
;;
@@ -2190,14 +2190,14 @@
# libtool to hard-code these into programs
;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc)
version_type=windows
shrext_cmds=".dll"
need_version=no
need_lib_prefix=no
case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32*)
+ yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc)
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
@@ -2220,7 +2220,7 @@
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo
${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
;;
- mingw*)
+ mingw* | cegcc)
# MinGW DLLs use traditional 'lib' prefix
soname_spec='${libname}`echo ${release} | $SED -e
's/[[.]]/-/g'`${versuffix}${shared_ext}'
sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP
"^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -2997,6 +2997,13 @@
fi
;;
+cegcc)
+ # ?? shouldn't this be based no build_os, not host_os?
+ # use the weaker test based on 'objdump'. See mingw*.
+ lt_cv_deplibs_check_method='file_magic file format
pe-arm-.*little(.*architecture: arm)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ ;;
+
darwin* | rhapsody*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -3308,7 +3315,7 @@
aix*)
symcode='[[BCDT]]'
;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc)
symcode='[[ABCDGISTW]]'
;;
hpux*)
@@ -3554,7 +3561,7 @@
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
- mingw* | cygwin* | os2* | pw32*)
+ mingw* | cygwin* | os2* | pw32* | cegcc)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for
example).
# Although the cygwin gcc ignores -fPIC, still need this for
old-style
@@ -3853,7 +3860,7 @@
# PIC is the default for these OSes.
;;
- mingw* | cygwin* | pw32* | os2*)
+ mingw* | cygwin* | pw32* | os2* | cegcc)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for
example).
# Although the cygwin gcc ignores -fPIC, still need this for
old-style
@@ -3922,7 +3929,7 @@
fi
;;
- mingw* | cygwin* | pw32* | os2*)
+ mingw* | cygwin* | pw32* | os2* | cegcc)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for
example).
m4_if([$1], [GCJ], [],
@@ -4139,7 +4146,7 @@
pw32*)
_LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
;;
- cygwin* | mingw*)
+ cygwin* | mingw* | cegcc)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience |
$global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^
]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1
DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq >
$export_symbols'
;;
*)
@@ -4191,7 +4198,7 @@
extract_expsyms_cmds=
case $host_os in
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
@@ -4278,7 +4285,7 @@
fi
;;
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually
meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
@@ -4629,7 +4636,7 @@
_LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
;;
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -5576,7 +5583,7 @@
esac
;;
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually
meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Index: libltdl/m4/ltoptions.m4
===================================================================
RCS file: /sources/libtool/libtool/libltdl/m4/ltoptions.m4,v
retrieving revision 1.14
diff -u -r1.14 ltoptions.m4
--- libltdl/m4/ltoptions.m4 1 Apr 2008 18:23:20 -0000 1.14
+++ libltdl/m4/ltoptions.m4 13 Apr 2008 21:47:11 -0000
@@ -125,7 +125,7 @@
[enable_win32_dll=yes
case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32*)
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)
? libtool_cegcc.diff
Index: ChangeLog
===================================================================
RCS file: /sources/libtool/libtool/ChangeLog,v
retrieving revision 1.2634
diff -u -r1.2634 ChangeLog
--- ChangeLog 11 Apr 2008 17:21:54 -0000 1.2634
+++ ChangeLog 13 Apr 2008 21:47:06 -0000
@@ -1,3 +1,11 @@
+2008-04-13 Vincent Torri <doursse at users dot sf dot net>
+
+ Add cegcc support
+ * libltdl/config/ltmain.m4sh:
+ * libltdl/m4/libtool.m4:
+ * libltdl/m4/ltoptions.m4:
+ add 'cegcc' when needed
+
2008-04-11 Eric Blake <[EMAIL PROTECTED]>
Fix usage of setmode without declaration on cygwin.
Index: libltdl/config/ltmain.m4sh
===================================================================
RCS file: /sources/libtool/libtool/libltdl/config/ltmain.m4sh,v
retrieving revision 1.106
diff -u -r1.106 ltmain.m4sh
--- libltdl/config/ltmain.m4sh 11 Apr 2008 17:21:55 -0000 1.106
+++ libltdl/config/ltmain.m4sh 13 Apr 2008 21:47:08 -0000
@@ -363,7 +363,7 @@
case $host in
- *cygwin* | *mingw* | *pw32*)
+ *cygwin* | *mingw* | *pw32* | *cegcc)
# don't eliminate duplications in $postdeps and $predeps
opt_duplicate_compiler_generated_deps=:
;;
@@ -836,7 +836,7 @@
# On Cygwin there's no "real" PIC flag so we must build both object types
case $host_os in
- cygwin* | mingw* | pw32* | os2*)
+ cygwin* | mingw* | pw32* | os2* | cegcc)
pic_mode=default
;;
esac
@@ -1608,7 +1608,7 @@
'exit $?'
tstripme="$stripme"
case $host_os in
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
case $realname in
*.dll.a)
tstripme=""
@@ -1714,7 +1714,7 @@
# Do a test to see if this is really a libtool program.
case $host in
- *cygwin*|*mingw*)
+ *cygwin* | *mingw* | *cegcc)
if func_ltwrapper_executable_p "$file"; then
func_ltwrapper_scriptname "$file"
wrapper=$func_ltwrapper_scriptname_result
@@ -1920,7 +1920,7 @@
$RM $export_symbols
eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p'
"'< "$nlist" > "$export_symbols"'
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
eval 'cat "$export_symbols" >>
"$output_objdir/$outputname.def"'
;;
@@ -1932,7 +1932,7 @@
eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" >
"$nlist"T'
eval '$MV "$nlist"T "$nlist"'
case $host in
- *cygwin | *mingw* )
+ *cygwin | *mingw* | *cegcc )
eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
;;
@@ -1988,7 +1988,7 @@
} lt_dlsymlist;
"
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
$ECHO >> "$output_objdir/$my_dlsyms" "\
/* DATA imports from DLLs on WIN32 con't be const, because
runtime relocations are performed -- see ld's documentation
@@ -2074,7 +2074,7 @@
# Transform the symbol file into the correct name.
symfileobj="$output_objdir/${my_outputname}S.$objext"
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
if test -f "$output_objdir/$my_outputname.def"; then
compile_command=`$ECHO "X$compile_command" | $Xsed -e "[EMAIL
PROTECTED]@%$output_objdir/$my_outputname.def $symfileobj%"`
finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "[EMAIL
PROTECTED]@%$output_objdir/$my_outputname.def $symfileobj%"`
@@ -2449,7 +2449,7 @@
"
case $host in
# Backslashes separate directories on plain windows
- *-*-mingw | *-*-os2*)
+ *-*-mingw | *-*-os2* | *-cegcc)
$ECHO "\
exec \"\$progdir\\\\\$program\" \${1+\"[EMAIL PROTECTED]"}
"
@@ -2654,7 +2654,7 @@
{
EOF
case "$host" in
- *mingw* | *cygwin* )
+ *mingw* | *cygwin* | *cegcc )
# make stdout use "unix" line endings
echo " setmode(1,_O_BINARY);"
;;
@@ -2731,7 +2731,7 @@
case $host_os in
- mingw*)
+ mingw* | cegcc)
cat <<"EOF"
{
char* p;
@@ -2770,7 +2770,7 @@
EOF
case $host_os in
- mingw*)
+ mingw* | cegcc)
cat <<EOF
/* execv doesn't actually work on mingw as expected on unix */
rval = _spawnv (_P_WAIT, "$lt_newargv0", (const char * const *) newargz);
@@ -3076,7 +3076,7 @@
{
$opt_debug
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc)
# It is impossible to link a dll without this setting, and
# we shouldn't force the makefile maintainer to figure out
# which system we are compiling for in order to pass an extra
@@ -3537,7 +3537,7 @@
;;
esac
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc)
testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`
case :$dllsearchpath: in
*":$dir:"*) ;;
@@ -3555,7 +3555,7 @@
-l*)
if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc)
# These systems don't actually have a C or math library (as such)
continue
;;
@@ -3632,7 +3632,7 @@
-no-install)
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc)
# The PATH hackery in wrapper scripts is required on Windows
# and Darwin in order for the loader to find any dlls it needs.
func_warning "\`-no-install' is ignored for $host"
@@ -4589,7 +4589,7 @@
if test -n "$library_names" &&
{ test "$use_static_libs" = no || test -z "$old_library"; }; then
case $host in
- *cygwin* | *mingw*)
+ *cygwin* | *mingw* | *cegcc)
# No point in relinking DLLs because paths are not encoded
notinst_deplibs="$notinst_deplibs $lib"
need_relink=no
@@ -4659,7 +4659,7 @@
elif test -n "$soname_spec"; then
# bleh windows
case $host in
- *cygwin* | mingw*)
+ *cygwin* | mingw* | *cegcc)
major=`expr $current - $age`
versuffix="-$major"
;;
@@ -5498,7 +5498,7 @@
if test "$build_libtool_libs" = yes; then
if test -n "$rpath"; then
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc)
# these systems don't actually have a c library (as such)!
;;
*-*-rhapsody* | *-*-darwin1.[012])
@@ -5985,7 +5985,7 @@
orig_export_symbols=
case $host_os in
- cygwin* | mingw*)
+ cygwin* | mingw* | cegcc)
if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
# exporting using user supplied symfile
if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
@@ -6599,7 +6599,7 @@
esac
fi
case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc)
testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
case :$dllsearchpath: in
*":$libdir:"*) ;;
@@ -6671,7 +6671,7 @@
wrappers_required=yes
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
if test "$build_libtool_libs" != yes; then
wrappers_required=no
fi
@@ -6817,7 +6817,7 @@
*) exeext= ;;
esac
case $host in
- *cygwin* | *mingw* )
+ *cygwin* | *mingw* | *cegcc )
func_dirname_and_basename "$output" "" "."
output_name=$func_basename_result
output_path=$func_dirname_result
@@ -7109,7 +7109,7 @@
# place dlname in correct position for cygwin
tdlname=$dlname
case $host,$output,$installed,$module,$dlname in
- *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll)
tdlname=../bin/$dlname ;;
+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll |
*cegcc,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
esac
$ECHO > $output "\
# $outputname - a libtool library file
Index: libltdl/m4/libtool.m4
===================================================================
RCS file: /sources/libtool/libtool/libltdl/m4/libtool.m4,v
retrieving revision 1.148
diff -u -r1.148 libtool.m4
--- libltdl/m4/libtool.m4 10 Apr 2008 21:18:02 -0000 1.148
+++ libltdl/m4/libtool.m4 13 Apr 2008 21:47:11 -0000
@@ -1503,7 +1503,7 @@
lt_cv_sys_max_cmd_len=-1;
;;
- cygwin* | mingw*)
+ cygwin* | mingw* | cegcc)
# On Win9x/ME, this test blows up -- it succeeds, but takes
# about 5 minutes as the teststring grows exponentially.
# Worse, since 9x/ME are not pre-emptively multitasking,
@@ -1729,7 +1729,7 @@
lt_cv_dlopen_self=yes
;;
- mingw* | pw32*)
+ mingw* | pw32* | cegcc)
lt_cv_dlopen="LoadLibrary"
lt_cv_dlopen_libs=
;;
@@ -2190,14 +2190,14 @@
# libtool to hard-code these into programs
;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc)
version_type=windows
shrext_cmds=".dll"
need_version=no
need_lib_prefix=no
case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32*)
+ yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc)
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
@@ -2220,7 +2220,7 @@
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} |
$SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
;;
- mingw*)
+ mingw* | cegcc)
# MinGW DLLs use traditional 'lib' prefix
soname_spec='${libname}`echo ${release} | $SED -e
's/[[.]]/-/g'`${versuffix}${shared_ext}'
sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" |
$SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -2997,6 +2997,13 @@
fi
;;
+cegcc)
+ # ?? shouldn't this be based no build_os, not host_os?
+ # use the weaker test based on 'objdump'. See mingw*.
+ lt_cv_deplibs_check_method='file_magic file format
pe-arm-.*little(.*architecture: arm)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ ;;
+
darwin* | rhapsody*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -3308,7 +3315,7 @@
aix*)
symcode='[[BCDT]]'
;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc)
symcode='[[ABCDGISTW]]'
;;
hpux*)
@@ -3554,7 +3561,7 @@
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
- mingw* | cygwin* | os2* | pw32*)
+ mingw* | cygwin* | os2* | pw32* | cegcc)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
# Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -3853,7 +3860,7 @@
# PIC is the default for these OSes.
;;
- mingw* | cygwin* | pw32* | os2*)
+ mingw* | cygwin* | pw32* | os2* | cegcc)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
# Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -3922,7 +3929,7 @@
fi
;;
- mingw* | cygwin* | pw32* | os2*)
+ mingw* | cygwin* | pw32* | os2* | cegcc)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
m4_if([$1], [GCJ], [],
@@ -4139,7 +4146,7 @@
pw32*)
_LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
;;
- cygwin* | mingw*)
+ cygwin* | mingw* | cegcc)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience |
$global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1
DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[
]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
;;
*)
@@ -4191,7 +4198,7 @@
extract_expsyms_cmds=
case $host_os in
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
@@ -4278,7 +4285,7 @@
fi
;;
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
@@ -4629,7 +4636,7 @@
_LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
;;
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -5576,7 +5583,7 @@
esac
;;
- cygwin* | mingw* | pw32*)
+ cygwin* | mingw* | pw32* | cegcc)
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Index: libltdl/m4/ltoptions.m4
===================================================================
RCS file: /sources/libtool/libtool/libltdl/m4/ltoptions.m4,v
retrieving revision 1.14
diff -u -r1.14 ltoptions.m4
--- libltdl/m4/ltoptions.m4 1 Apr 2008 18:23:20 -0000 1.14
+++ libltdl/m4/ltoptions.m4 13 Apr 2008 21:47:11 -0000
@@ -125,7 +125,7 @@
[enable_win32_dll=yes
case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32*)
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)