Fix various details in win32 makefiles and Config.pm setup.
authorGurusamy Sarathy <gsar@cpan.org>
Fri, 14 Nov 1997 05:14:44 +0000 (05:14 +0000)
committerGurusamy Sarathy <gsar@cpan.org>
Fri, 14 Nov 1997 05:14:44 +0000 (05:14 +0000)
 - ldflags is set for both compilers now
 - extensions list is now correct
 - delete perl95.exe on distclean
 - cf_time now gets updated (once)
 - ccdlflags is set for Borland
 - fix startperl so dprofpp works

p4raw-id: //depot/win32/perl@249

win32/Makefile
win32/config.bc
win32/config.vc
win32/config_sh.PL
win32/makefile.mk

index 5d241300c0ee00a002c00b233d7e9fa4f909fe49..d2e464145a8b97a3edbd1761dc3ada6ef7af8252 100644 (file)
@@ -86,7 +86,7 @@ LIBFILES = oldnames.lib kernel32.lib user32.lib gdi32.lib \
        version.lib odbc32.lib odbccp32.lib
 
 CFLAGS   = -nologo -W3 $(INCLUDES) $(DEFINES) $(LOCDEFS) $(PCHFLAGS) $(OPTIMIZE)
-LINK_FLAGS  = -nologo $(LIBFILES) $(LINK_DBG) -machine:$(PROCESSOR_ARCHITECTURE)
+LINK_FLAGS  = -nologo $(LINK_DBG) -machine:$(PROCESSOR_ARCHITECTURE)
 OBJOUT_FLAG = -Fo
 
 #################### do not edit below this line #######################
@@ -103,7 +103,7 @@ OBJOUT_FLAG = -Fo
 
 .obj.dll:
        $(LINK32) -dll -subsystem:windows -implib:$(*B).lib -def:$(*B).def \
-           -out:$@ $(LINK_FLAGS) $< $(LIBPERL)  
+           -out:$@ $(LINK_FLAGS) $(LIBFILES) $< $(LIBPERL)  
 
 #
 INST_BIN=$(INST_TOP)\bin
@@ -244,7 +244,8 @@ CORE_H = ..\av.h    \
        .\include\sys\socket.h  \
        .\win32.h
 
-EXTENSIONS=DynaLoader Socket IO Fcntl Opcode SDBM_File attrs Thread
+DYNAMIC_EXT=Socket IO Fcntl Opcode SDBM_File attrs Thread
+STATIC_EXT=DynaLoader
 
 DYNALOADER=$(EXTDIR)\DynaLoader\DynaLoader
 SOCKET=$(EXTDIR)\Socket\Socket
@@ -289,7 +290,8 @@ $(DYNALOADER).obj : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c
 #------------------------------------------------------------
 
 $(GLOBEXE): perlglob.obj
-       $(LINK32) $(LINK_FLAGS) -out:$@ -subsystem:$(SUBSYS) perlglob.obj setargv.obj 
+       $(LINK32) $(LINK_FLAGS) $(LIBFILES) -out:$@ -subsystem:$(SUBSYS) \
+           perlglob.obj setargv.obj 
 
 $(GLOBBAT) : ..\lib\File\DosGlob.pm $(MINIPERL)
        $(MINIPERL) $(PL2BAT) - < ..\lib\File\DosGlob.pm > $(GLOBBAT)
@@ -311,7 +313,8 @@ config.w32 : $(CFGSH_TMPL)
            "INST_TOP=$(INST_TOP)" "cc=$(CC)" "ccflags=$(OPTIMIZE) $(DEFINES)" \
            "cf_email=$(EMAIL)" "libs=$(LIBFILES)" "incpath=$(CCINCDIR)" \
            "libpth=$(CCLIBDIR)" "libc=$(LIBC)" \
-           "LINK_FLAGS=$(LINK_FLAGS)" \
+           "static_ext=$(STATIC_EXT)" "dynamic_ext=$(DYNAMIC_EXT)" \
+            "ldflags=$(LINK_FLAGS)" "optimize=$(OPTIMIZE)" \
            config.w32 > ..\config.sh
 
 $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl
@@ -325,7 +328,7 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl
 
 $(MINIPERL) : ..\miniperlmain.obj $(CORE_OBJ) $(WIN32_OBJ)
        $(LINK32) -subsystem:console -out:$@ @<<
-               $(LINK_FLAGS) ..\miniperlmain.obj $(CORE_OBJ) $(WIN32_OBJ)
+       $(LINK_FLAGS) $(LIBFILES) ..\miniperlmain.obj $(CORE_OBJ) $(WIN32_OBJ)
 <<
 
 $(WIN32_OBJ) : $(CORE_H)
@@ -337,7 +340,7 @@ perldll.def : $(MINIPERL) $(CONFIGPM)
 
 $(PERLDLL): perldll.def $(CORE_OBJ) $(WIN32_OBJ) $(DLL_OBJ)
        $(LINK32) -dll -def:perldll.def -out:$@ @<<
-               $(LINK_FLAGS) $(CORE_OBJ) $(WIN32_OBJ) $(DLL_OBJ)
+               $(LINK_FLAGS) $(LIBFILES) $(CORE_OBJ) $(WIN32_OBJ) $(DLL_OBJ)
 <<
        $(XCOPY) $(PERLIMPLIB) ..\lib\CORE
 
@@ -354,7 +357,7 @@ perlmain.obj : perlmain.c
        $(CC) $(CFLAGS) -UPERLDLL -c perlmain.c
 
 $(PERLEXE): $(PERLDLL) $(CONFIGPM) perlmain.obj  
-       $(LINK32) -subsystem:console -out:perl.exe $(LINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:perl.exe $(LINK_FLAGS) $(LIBFILES) \
            perlmain.obj $(WINIOMAYBE) $(PERLIMPLIB) 
        copy perl.exe $@
        del perl.exe
@@ -374,7 +377,7 @@ win32mt.obj : win32.c
        $(CC) $(CFLAGS) -MT -c $(OBJOUT_FLAG)win32mt.obj win32.c
 
 $(PERL95EXE): $(PERLDLL) $(CONFIGPM) $(PERL95_OBJ)
-       $(LINK32) -subsystem:console -out:perl95.exe $(LINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:perl95.exe $(LINK_FLAGS) $(LIBFILES) \
            $(PERL95_OBJ) $(PERLIMPLIB) 
        copy perl95.exe $@
        del perl95.exe
@@ -454,7 +457,7 @@ utils: $(PERLEXE)
                        bin\pl2bat.pl
 
 distclean: clean
-       -del /f $(MINIPERL) $(PERLEXE) $(PERLDLL) $(GLOBEXE) \
+       -del /f $(MINIPERL) $(PERLEXE) $(PERL95EXE) $(PERLDLL) $(GLOBEXE) \
                $(PERLIMPLIB) ..\miniperl.lib $(MINIMOD)
        -del /f *.def *.map
        -del /f $(SOCKET_DLL) $(IO_DLL) $(SDBM_FILE_DLL) $(FCNTL_DLL) \
index 60e9b47e627454c825458ecbc7150ccde946ed63..5dd96fd8e816278dffe04eec92bca99f31774367 100644 (file)
@@ -11,8 +11,8 @@ cc='bcc32'
 ccflags='-DWIN32'
 cppflags='-DWIN32'
 dlsrc='dl_win32.xs'
-dynamic_ext='Fcntl IO Opcode SDBM_File Socket'
-extensions='Fcntl IO Opcode SDBM_File Socket'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs Thread'
+extensions='~static_ext~ ~dynamic_ext~'
 installarchlib='~INST_TOP~\lib'
 installprivlib='~INST_TOP~\lib'
 libpth=''
@@ -26,7 +26,7 @@ shsharp='true'
 sig_name='ZERO HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM USR1 USR2 CHLD PWR WINCH URG IO STOP TSTP CONT TTIN TTOU VTALRM PROF XCPU XFSZ WAITING LWP FREEZE THAW RTMIN NUM37 NUM38 NUM39 NUM40 NUM41 NUM42 RTMAX IOT CLD POLL'
 so='dll'
 startsh='#!/bin/sh'
-static_ext=' '
+static_ext='DynaLoader'
 Author=''
 CONFIG='true'
 Date='$Date'
@@ -60,10 +60,10 @@ c=''
 castflags='0'
 cat='type'
 cccdlflags=' '
-ccdlflags=' '
-cf_by='garyng'
-cf_email='71564.1743@compuserve.com'
-cf_time='Thu Apr 11 06:20:49 PDT 1996'
+ccdlflags='-tWD'
+cf_by='nobody'
+cf_email='nobody@no.where.net'
+cf_time=''
 chgrp=''
 chmod=''
 chown=''
@@ -357,12 +357,12 @@ installscript='~INST_TOP~\bin'
 installsitearch='~INST_TOP~\lib\site'
 installsitelib='~INST_TOP~\lib\site'
 intsize='4'
-known_extensions='DB_File Fcntl GDBM_File NDBM_File ODBM_File Opcode POSIX SDBM_File Socket'
+known_extensions='DB_File Fcntl GDBM_File NDBM_File ODBM_File Opcode POSIX SDBM_File Socket IO attrs Thread'
 ksh=''
 large=''
 ld='tlink32'
 lddlflags='-Tpd'
-ldflags='~LINK_FLAGS~'
+ldflags=''
 less='less'
 lib_ext='.lib'
 libc='cw32mti.lib'
@@ -411,7 +411,7 @@ o_nonblock='O_NONBLOCK'
 obj_ext='.obj'
 oldarchlib=''
 oldarchlibexp=''
-optimize='-O'
+optimize='-O2'
 orderlib='false'
 package='perl5'
 pager='more /e'
@@ -462,7 +462,7 @@ spackage='Perl5'
 spitshell=''
 split=''
 ssizetype='int'
-startperl='#perl'
+startperl='#!perl'
 stdchar='unsigned char'
 stdio_base='((fp)->buffer)'
 stdio_bufsiz='((fp)->level + (fp)->curp - (fp)->buffer)'
index 2bce3b230ef0f4f26c6eed5ed88f0f181e9146f8..d34b1f93fb849ba22f3826a7dfcaccc735dfd788 100644 (file)
@@ -11,8 +11,8 @@ cc='cl'
 ccflags='-MD -DWIN32'
 cppflags='-DWIN32'
 dlsrc='dl_win32.xs'
-dynamic_ext='Fcntl IO Opcode SDBM_File Socket'
-extensions='Fcntl IO Opcode SDBM_File Socket'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs Thread'
+extensions='~static_ext~ ~dynamic_ext~'
 installarchlib='~INST_TOP~\lib'
 installprivlib='~INST_TOP~\lib'
 libpth=''
@@ -26,7 +26,7 @@ shsharp='true'
 sig_name='ZERO HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM USR1 USR2 CHLD PWR WINCH URG IO STOP TSTP CONT TTIN TTOU VTALRM PROF XCPU XFSZ WAITING LWP FREEZE THAW RTMIN NUM37 NUM38 NUM39 NUM40 NUM41 NUM42 RTMAX IOT CLD POLL'
 so='dll'
 startsh='#!/bin/sh'
-static_ext=' '
+static_ext='DynaLoader'
 Author=''
 CONFIG='true'
 Date='$Date'
@@ -61,9 +61,9 @@ castflags='0'
 cat='type'
 cccdlflags=' '
 ccdlflags=' '
-cf_by='garyng'
-cf_email='71564.1743@compuserve.com'
-cf_time='Thu Apr 11 06:20:49 PDT 1996'
+cf_by='nobody'
+cf_email='nobody@no.where.net'
+cf_time=''
 chgrp=''
 chmod=''
 chown=''
@@ -357,7 +357,7 @@ installscript='~INST_TOP~\bin'
 installsitearch='~INST_TOP~\lib\site'
 installsitelib='~INST_TOP~\lib\site'
 intsize='4'
-known_extensions='DB_File Fcntl GDBM_File NDBM_File ODBM_File Opcode POSIX SDBM_File Socket'
+known_extensions='DB_File Fcntl GDBM_File NDBM_File ODBM_File Opcode POSIX SDBM_File Socket IO attrs Thread'
 ksh=''
 large=''
 ld='link'
@@ -462,7 +462,7 @@ spackage='Perl5'
 spitshell=''
 split=''
 ssizetype='int'
-startperl='#perl'
+startperl='#!perl'
 stdchar='char'
 stdio_base='((fp)->_base)'
 stdio_bufsiz='((fp)->_cnt + (fp)->_ptr - (fp)->_base)'
index 0769ef311207889fb9039e49dfd5daf0bc582397..0c3713cb2ee2d93819acf5e4b7c93ddc130a701d 100644 (file)
@@ -17,7 +17,15 @@ $opt{'cf_email'} = $opt{'cf_by'} . '@' . (gethostbyname('localhost'))[0]
 while (<>)
  {
   s/~([\w_]+)~/$opt{$1}/g;
-  $_ = "$1='$opt{$1}'\n" if (/^([\w_]+)=/ && exists($opt{$1}));
+  if (/^([\w_]+)=(.*)$/) {
+    # this depends on cf_time being empty in the template (or we'll get a loop)
+    if ($1 eq 'cf_time') {
+      $_ = "$1='" . localtime(time) . "'\n" if $2 =~ /^\s*'\s*'/;
+    }
+    elsif (exists $opt{$1}) {
+      $_ = "$1='$opt{$1}'\n";
+    }
+  }
   print;
  }
 
index 35baed5c5dd846013c3cdc5a28c2100db784aa7e..2b7dc8ccbe5a086dff7e33afc2637dfc0e10140e 100644 (file)
@@ -131,7 +131,7 @@ LIBFILES = oldnames.lib kernel32.lib user32.lib gdi32.lib \
        version.lib odbc32.lib odbccp32.lib
 
 CFLAGS   = -nologo -W3 $(INCLUDES) $(DEFINES) $(LOCDEFS) $(PCHFLAGS) $(OPTIMIZE)
-LINK_FLAGS  = -nologo $(LIBFILES) $(LINK_DBG) -machine:$(PROCESSOR_ARCHITECTURE)
+LINK_FLAGS  = -nologo $(LINK_DBG) -machine:$(PROCESSOR_ARCHITECTURE)
 OBJOUT_FLAG = -Fo
 
 .ENDIF
@@ -157,7 +157,7 @@ OBJOUT_FLAG = -Fo
 
 .obj.dll:
        $(LINK32) -dll -subsystem:windows -implib:$(*B).lib -def:$(*B).def \
-           -out:$@ $(LINK_FLAGS) $< $(LIBPERL)  
+           -out:$@ $(LINK_FLAGS) $(LIBFILES) $< $(LIBPERL)  
 
 .ENDIF
 
@@ -312,7 +312,8 @@ CORE_H = ..\av.h    \
        .\include\sys\socket.h  \
        .\win32.h
 
-EXTENSIONS=DynaLoader Socket IO Fcntl Opcode SDBM_File attrs Thread
+DYNAMIC_EXT=Socket IO Fcntl Opcode SDBM_File attrs Thread
+STATIC_EXT=DynaLoader
 
 DYNALOADER=$(EXTDIR)\DynaLoader\DynaLoader
 SOCKET=$(EXTDIR)\Socket\Socket
@@ -362,7 +363,8 @@ $(GLOBEXE): perlglob.obj
        $(LINK32) -Tpe -ap $(LINK_FLAGS) c0x32.obj perlglob.obj \
            $(CCLIBDIR)\32BIT\wildargs.obj,$@,,import32.lib cw32mt.lib,
 .ELSE
-       $(LINK32) $(LINK_FLAGS) -out:$@ -subsystem:$(SUBSYS) perlglob.obj setargv.obj 
+       $(LINK32) $(LINK_FLAGS) $(LIBFILES) -out:$@ -subsystem:$(SUBSYS) \
+           perlglob.obj setargv.obj 
 .ENDIF
 
 $(GLOBBAT) : ..\lib\File\DosGlob.pm $(MINIPERL)
@@ -384,7 +386,8 @@ config.w32 : $(CFGSH_TMPL)
            "INST_TOP=$(INST_TOP)" "cc=$(CC)" "ccflags=$(OPTIMIZE) $(DEFINES)" \
            "cf_email=$(EMAIL)" "libs=$(LIBFILES:f)" "incpath=$(CCINCDIR)" \
            "libpth=$(strip $(CCLIBDIR) $(LIBFILES:d))" "libc=$(LIBC)" \
-            "LINK_FLAGS=$(LINK_FLAGS)" \
+            "static_ext=$(STATIC_EXT)" "dynamic_ext=$(DYNAMIC_EXT)" \
+            "ldflags=$(LINK_FLAGS)" "optimize=$(OPTIMIZE)" \
            config.w32 > ..\config.sh
 
 $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl
@@ -403,7 +406,7 @@ $(MINIPERL) : ..\miniperlmain.obj $(CORE_OBJ) $(WIN32_OBJ)
                $(CORE_OBJ:s,\,\\) $(WIN32_OBJ:s,\,\\),$@,,$(LIBFILES),)
 .ELSE
        $(LINK32) -subsystem:console -out:$@ \
-           @$(mktmp $(LINK_FLAGS) ..\miniperlmain.obj \
+           @$(mktmp $(LINK_FLAGS) $(LIBFILES) ..\miniperlmain.obj \
                $(CORE_OBJ:s,\,\\) $(WIN32_OBJ:s,\,\\))
 .ENDIF
 
@@ -425,7 +428,7 @@ $(PERLDLL): perldll.def $(CORE_OBJ) $(WIN32_OBJ) $(DLL_OBJ)
        $(IMPLIB) $*.lib $@
 .ELSE
        $(LINK32) -dll -def:perldll.def -out:$@ \
-           @$(mktmp $(LINK_FLAGS) $(CORE_OBJ:s,\,\\) \
+           @$(mktmp $(LINK_FLAGS) $(LIBFILES) $(CORE_OBJ:s,\,\\) \
                $(WIN32_OBJ:s,\,\\) $(DLL_OBJ:s,\,\\))
 .ENDIF
        $(XCOPY) $(PERLIMPLIB) ..\lib\CORE
@@ -450,7 +453,7 @@ $(PERLEXE): $(PERLDLL) $(CONFIGPM) perlmain.obj
            $@,\n \
            $(PERLIMPLIB) $(LIBFILES)\n)
 .ELSE
-       $(LINK32) -subsystem:console -out:perl.exe $(LINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:perl.exe $(LINK_FLAGS) $(LIBFILES) \
            perlmain.obj $(WINIOMAYBE) $(PERLIMPLIB) 
        copy perl.exe $@
        del perl.exe
@@ -473,7 +476,7 @@ win32mt.obj : win32.c
        $(CC) $(CFLAGS) -MT -c $(OBJOUT_FLAG)win32mt.obj win32.c
 
 $(PERL95EXE): $(PERLDLL) $(CONFIGPM) $(PERL95_OBJ)
-       $(LINK32) -subsystem:console -out:perl95.exe $(LINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:perl95.exe $(LINK_FLAGS) $(LIBFILES) \
            $(PERL95_OBJ) $(PERLIMPLIB) 
        copy perl95.exe $@
        del perl95.exe
@@ -542,7 +545,7 @@ utils: $(PERLEXE)
                        bin\pl2bat.pl
 
 distclean: clean
-       -del /f $(MINIPERL) $(PERLEXE) $(PERLDLL) $(GLOBEXE) \
+       -del /f $(MINIPERL) $(PERLEXE) $(PERL95EXE) $(PERLDLL) $(GLOBEXE) \
                $(PERLIMPLIB) ..\miniperl.lib $(MINIMOD)
        -del /f *.def *.map
        -del /f $(SOCKET_DLL) $(IO_DLL) $(SDBM_FILE_DLL) $(FCNTL_DLL) \