This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove leftover Windows 95 / Windows NT4 support code
[perl5.git] / Makefile.SH
index 9db1866..6e9df1a 100755 (executable)
@@ -20,16 +20,7 @@ case $PERL_CONFIG_SH in
        ;;
 esac
 
-case $CROSS_NAME in
-'')
-       Makefile=Makefile
-       ;;
-*)
-       # if cross-compilation, the Makefile named accordingly
-       Makefile=Makefile-cross-$CROSS_NAME
-       . Cross/config-${CROSS_NAME}.sh
-       ;;
-esac
+Makefile=Makefile
 
 : This forces SH files to create target in same directory as SH file.
 : This is so that make depend always knows where to find SH derivatives.
@@ -425,8 +416,6 @@ EOF
        ;;
 esac
 
-case $CROSS_NAME in
-'')
 ## In the following dollars and backticks do not need the extra backslash.
 $spitshell >>$Makefile <<'!NO!SUBS!'
 
@@ -441,28 +430,6 @@ CONFIGPOD = lib/Config.pod
 
 CONFIGH = config.h
 !NO!SUBS!
-       ;;
-*)
-       # if cross-compilation
-$spitshell >>$Makefile <<!GROK!THIS!
-CROSS_NAME = $CROSS_NAME
-CROSS_LIB = xlib/$CROSS_NAME
-
-CCCMD    = \`sh \$(shellflags) cflags-cross-$CROSS_NAME "optimize='\$(OPTIMIZE)'" \$@\` -I\$(CROSS_LIB)
-CCCMDSRC = \`sh \$(shellflags) cflags-cross-$CROSS_NAME "optimize='\$(OPTIMIZE)'" \$<\` -I\$(CROSS_LIB)
-CONFIGPM = xlib/\$(CROSS_NAME)/Config.pm
-CONFIGPOD = xlib/\$(CROSS_NAME)/Config.pod
-CONFIGH = xconfig.h
-
-xconfig.h: config_h.SH Cross/config-\$(CROSS_NAME).sh
-       CONFIG_SH=Cross/config-\$(CROSS_NAME).sh CONFIG_H=xconfig.h \$(SHELL) config_h.SH
-       #TODO \$(LDLIBPTH) ./miniperl$(EXE_EXT) -Ilib -MCross=\$(CROSS_NAME) config_h.PL "INST_VER=\$(INST_VER)" "CORE_DIR=\$(CROSS_LIB)" "CONFIG_H=xconfig.h"
-       cp xconfig.h \$(CROSS_LIB)/
-       cp xconfig.h \$(CROSS_LIB)/config.h
-
-!GROK!THIS!
-       ;;
-esac
 
 SH_to_target() {
     echo $@ | sed -e s/\\\.SH//g -e s/_/./g
@@ -524,7 +491,7 @@ mini_obj = $(minindt_obj) $(MINIDTRACE_O)
 ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
 obj = $(ndt_obj) $(DTRACE_O)
 
-perltoc_pod_prereqs = extra.pods pod/perl5199delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod
+perltoc_pod_prereqs = extra.pods pod/perl51910delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod
 generated_pods = pod/perltoc.pod $(perltoc_pod_prereqs)
 generated_headers = uudmap.h bitcount.h mg_data.h
 
@@ -701,27 +668,44 @@ globals$(OBJ_EXT): $(generated_headers)
 
 uudmap.h mg_data.h: bitcount.h
 
-bitcount.h: generate_uudmap$(HOST_EXE_EXT)
-       ./generate_uudmap$(HOST_EXE_EXT) $(generated_headers)
-
 generate_uudmap$(OBJ_EXT): mg_raw.h
 
 !NO!SUBS!
 
-if test "X$hostgenerate" != X; then
-       $spitshell >>$Makefile <<'!NO!SUBS!'
+# If hostgerenate isn't defined, then we have to build
+# generate_uudmap and run it. This can potentially mean running
+# it on the target system if we're cross-compiling.
+# If it is defined, then we just run it locally.
+case "$hostgenerate" in
+'')
+$spitshell >>$Makefile <<!GROK!THIS!
+bitcount.h: generate_uudmap\$(HOST_EXE_EXT)
+       $run ./generate_uudmap\$(HOST_EXE_EXT) \$(generated_headers)
+       -@for f in \$(generated_headers); do \\
+           $from \$\$f; \\
+       done
+
+!GROK!THIS!
+
+$spitshell >>$Makefile <<'!NO!SUBS!'
 generate_uudmap$(HOST_EXE_EXT): generate_uudmap$(OBJ_EXT)
-       -@rm generate_uudmap$(HOST_EXE_EXT)
-       $(LNS) $(HOST_GENERATE) generate_uudmap$(HOST_EXE_EXT)
+       $(CC) -o generate_uudmap$(EXE_EXT) $(LDFLAGS) generate_uudmap$(OBJ_EXT) $(libs)
 
 !NO!SUBS!
-else
-       $spitshell >>$Makefile <<'!NO!SUBS!'
+;;
+*)
+$spitshell >>$Makefile <<'!NO!SUBS!'
+bitcount.h: generate_uudmap$(HOST_EXE_EXT)
+       ./generate_uudmap$(HOST_EXE_EXT) $(generated_headers)
+
 generate_uudmap$(HOST_EXE_EXT): generate_uudmap$(OBJ_EXT)
-       $(CC) -o generate_uudmap$(EXE_EXT) $(LDFLAGS) generate_uudmap$(OBJ_EXT) $(libs)
+       -@rm generate_uudmap$(HOST_EXE_EXT)
+       $(LNS) $(HOST_GENERATE) generate_uudmap$(HOST_EXE_EXT)
 
 !NO!SUBS!
-fi
+;;
+esac
+
 
 $spitshell >>$Makefile <<'!NO!SUBS!'
 perlmain.c: $(MINIPERL_EXE) ext/ExtUtils-Miniperl/pm_to_blib
@@ -1032,9 +1016,9 @@ pod/perlintern.pod: $(MINIPERL_EXE) autodoc.pl embed.fnc
 pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST
        $(MINIPERL) pod/perlmodlib.PL -q
 
-pod/perl5199delta.pod: pod/perldelta.pod
-       $(RMS) pod/perl5199delta.pod
-       $(LNS) perldelta.pod pod/perl5199delta.pod
+pod/perl51910delta.pod: pod/perldelta.pod
+       $(RMS) pod/perl51910delta.pod
+       $(LNS) perldelta.pod pod/perl51910delta.pod
 
 extra.pods: $(MINIPERL_EXE)
        -@test ! -f extra.pods || rm -f `cat extra.pods`
@@ -1254,7 +1238,7 @@ realclean:        _realcleaner _mopup
        @echo "Note that '$(MAKE) realclean' does not delete config.sh or Policy.sh"
 
 _clobber:
-       -@rm -f Cross/run-* Cross/to-* Cross/from-*
+       -@rm -f Cross/run-* Cross/to-* Cross/from-* Cross/mkdir
        -rm -rf host
        rm -f t/test_state
        rm -f config.sh cppstdin Policy.sh extras.lst
@@ -1472,6 +1456,8 @@ test_prep test-prep: test_prep_pre \$(MINIPERL_EXE) \$(unidatafiles) \$(PERL_EXE
        $to *.h
 # --- For t/x2p/s2p.t
        $to x2p
+# --- For t/TEST
+       $to config.sh
 # --- For lib/diagnostics.t with -Duseshrplib
        $to \$(PERL_EXE)
        cd t && (rm -f \$(PERL_EXE); \$(LNS) ../\$(PERL_EXE) \$(PERL_EXE)) && cd ..
@@ -1498,7 +1484,7 @@ test check: test_prep
 *) $spitshell >>$Makefile <<!GROK!THIS!
 
 test check: test_prep
-       $run -cwd $targetdir/t -env LD_LIBRARY_PATH=$targetdir:$targetdir/lib:$targetdir/lib/auto ./TEST
+       $run -cwd $targetdir/t -env "$targetenv LD_LIBRARY_PATH=$targetdir:$targetdir/lib:$targetdir/lib/auto:\$\$LD_LIBRARY_PATH" ./TEST
 
 !GROK!THIS!
 ;;