Step 2 in backporting crosscompile/sysroot changes
authorH.Merijn Brand <h.m.brand@xs4all.nl>
Mon, 20 Jan 2014 08:16:00 +0000 (09:16 +0100)
committerH.Merijn Brand <h.m.brand@xs4all.nl>
Mon, 20 Jan 2014 08:16:00 +0000 (09:16 +0100)
U/modified/so.U [new file with mode: 0644]
U/modified/usrinc.U

new file mode 100644 (file)
index 0000000..e42faa9
--- /dev/null
@@ -0,0 +1,76 @@
+?RCS: $Id: so.U 1 2006-08-24 12:32:52Z rmanfredi $
+?RCS:
+?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 4.0.
+?RCS:
+?RCS: $Log: so.U,v $
+?RCS: Revision 3.0.1.2  1994/10/29  16:30:04  ram
+?RCS: patch36: now tells user how he can suppress shared lib lookup (ADO)
+?RCS: patch36: removed echo at the top, since it's now in the here-doc (ADO)
+?RCS:
+?RCS: Revision 3.0.1.1  1994/06/20  07:07:02  ram
+?RCS: patch30: created
+?RCS:
+?X:
+?X:    This unit computes the shared-object / shared-lib extension
+?X:
+?MAKE:so d_libname_unique: test libpth Loc Myread Oldconfig cat Setvar
+?MAKE: -pick add $@ %<
+?S:so:
+?S:    This variable holds the extension used to identify shared libraries
+?S:    (also known as shared objects) on the system. Usually set to 'so'.
+?S:.
+?S:d_libname_unique:
+?S:    This variable is defined if the target system insists on unique
+?S:    basenames for shared library files. This is currently true on Android,
+?S:    false everywhere else we know of.
+?S:    Defaults to 'undef'.
+?S:.
+?LINT:set d_libname_unique
+?T: xxx
+: compute shared library extension
+case "$so" in
+'')
+       if xxx=`./loc libc.sl X $libpth`; $test -f "$xxx"; then
+               dflt='sl'
+       else
+               dflt='so'
+       fi
+       ;;
+*) dflt="$so";;
+esac
+$cat <<EOM
+
+On some systems, shared libraries may be available.  Answer 'none' if
+you want to suppress searching of shared libraries for the remainder
+of this configuration.
+
+EOM
+rp='What is the file extension used for shared libraries?'
+. ./myread
+so="$ans"
+
+: Does target system insist that shared library basenames are unique
+$cat << EOM
+
+Some dynamic loaders assume that the *basename* of shared library filenames
+are globally unique.  We'll default this to undef as we assume your system
+is not this weird. Set to defined if you're on one of them.
+
+EOM
+
+dflt='n'
+rp='Make shared library basenames unique?'
+. ./myread
+case "$ans" in
+y|Y) val="$define" ;;
+*)   val="$undef"  ;;
+esac
+set d_libname_unique
+eval $setvar
+
index 011f37f..9b06164 100644 (file)
@@ -25,7 +25,7 @@
 ?RCS: Baseline for dist 3.0 netwide release.
 ?RCS:
 ?MAKE:usrinc incpath mips_type: test cat echo n c Getfile Guess \
-       Oldconfig eunicefix contains rm
+       Oldconfig eunicefix contains rm sysroot cc
 ?MAKE: -pick add $@ %<
 ?S:usrinc:
 ?S:    This variable holds the path of the include files, which is
 ?S:    Possible values are "BSD 4.3" and "System V".
 ?S:.
 ?D:usrinc='/usr/include'
+?LINT:extern cppflags
 ?LINT:create mips
 ?T:xxx_prompt
 ?F:./mips
 : What should the include directory be ?
+: Use sysroot if set, so findhdr looks in the right place.
 echo " "
 $echo $n "Hmm...  $c"
-dflt='/usr/include'
+dflt="$sysroot/usr/include"
 incpath=''
 ?X:    mips_type is used later, to add -DSYSTYPE_BSD43 to cppflags if needed.
 mips_type=''
@@ -61,7 +63,7 @@ if $test -f /bin/mips && /bin/mips; then
 /bsd43
 #endif
 EOCP
-       if cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then
+       if $cc $cppflags -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then
                dflt='/bsd43/usr/include'
                incpath='/bsd43'
                mips_type='BSD 4.3'