[win32] reverse integrate asperl branch contents (phew!)
Gurusamy Sarathy [Fri, 29 May 1998 11:05:50 +0000 (11:05 +0000)]
 - various fixups to ensure AS stuff does no harm
 - adjust win32/makefiles for the new directory layout (new layout
   looks rather a muddle--needs rework)
 - verified build & test on NT and Solaris/gcc

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

1  2 
lib/ExtUtils/Mksymlists.pm
win32/Makefile
win32/config.bc
win32/config.gc
win32/config.vc
win32/config_H.bc
win32/config_H.gc
win32/config_H.vc
win32/makefile.mk

Simple merge
diff --cc win32/Makefile
@@@ -9,7 -10,7 +10,7 @@@
  # Set these to wherever you want "nmake install" to put your
  # newly built perl.
  INST_DRV      = c:
--INST_TOP      = $(INST_DRV)\perl5004.5x
++INST_TOP      = $(INST_DRV)\perl\5004.5x
  
  #
  # uncomment to enable threads-capabilities
  #CCTYPE               = MSVC20
  
  #
+ # uncomment next line if you want to use the perl object
 -OBJECT                = -DPERL_OBJECT
++# Currently, this cannot be enabled if you ask for threads above
++#OBJECT               = -DPERL_OBJECT
+ #
  # uncomment next line if you want debug version of perl (big,slow)
  #CFG          = Debug
  
@@@ -39,8 -44,8 +45,9 @@@
  # set this if you wish to use perl's malloc
  # WARNING: Turning this on/off WILL break binary compatibility with extensions
  # you may have compiled with/without it.  Be prepared to recompile all extensions
--# if you change the default.
- PERL_MALLOC   = define
++# if you change the default.  Currently, this cannot be enabled if you ask for
++# PERL_OBJECT above.
+ #PERL_MALLOC  = define
  
  #
  # set the install locations of the compiler include/libraries
@@@ -403,9 -414,9 +416,14 @@@ EXTENSION_DLL     =               
                $(SDBM_FILE_DLL)\
                $(IO_DLL)       \
                $(POSIX_DLL)    \
-               $(ATTRS_DLL)    \
+               $(ATTRS_DLL)
 -#             $(THREAD_DLL)   \
 -#             $(B_DLL)
++
++!IF "$(OBJECT)" == ""
++EXTENSION_DLL =               \
++              $(EXTENSION_DLL)\
 +              $(THREAD_DLL)   \
 +              $(B_DLL)
++!ENDIF
  
  POD2HTML      = $(PODDIR)\pod2html
  POD2MAN               = $(PODDIR)\pod2man
diff --cc win32/config.bc
@@@ -367,14 -367,14 +367,14 @@@ i_varhdr='varargs.h
  i_vfork='undef'
  incpath=''
  inews=''
 -installarchlib=''
 -installbin='~INST_TOP~\bin'
 +installarchlib='~INST_TOP~\lib\~archname~'
- installbin='~INST_TOP~\bin'
++installbin='~INST_TOP~\bin\~archname~'
  installman1dir='~INST_TOP~\man\man1'
  installman3dir='~INST_TOP~\man\man3'
  installprivlib='~INST_TOP~\lib'
  installscript='~INST_TOP~\bin'
- installsitearch='~INST_TOP~\lib\site\~archname~'
- installsitelib='~INST_TOP~\lib\site'
 -installsitearch=''
 -installsitelib='~INST_TOP~\lib\site'
++installsitearch='~INST_TOP~\..\site\~VERSION~\lib\~archname~'
++installsitelib='~INST_TOP~\..\site\~VERSION~\lib'
  intsize='4'
  known_extensions='DB_File Fcntl GDBM_File NDBM_File ODBM_File Opcode POSIX SDBM_File Socket IO attrs Thread'
  ksh=''
@@@ -450,7 -450,7 +450,7 @@@ patchlevel='2
  path_sep=';'
  perl='perl'
  perladmin=''
--perlpath='~INST_TOP~\bin\perl.exe'
++perlpath='~INST_TOP~\bin\~archname~\perl.exe'
  pg=''
  phostname='hostname'
  pidtype='int'
@@@ -485,10 -485,10 +485,10 @@@ sig_name='ZERO INT QUIT ILL FPE KILL SE
  sig_name_init='"ZERO", "INT", "QUIT", "ILL", "FPE", "KILL", "SEGV", "PIPE", "ALRM", "TERM", "USR1", "USR2", "CHLD", "USR3", "BREAK", "ABRT", "STOP", "CONT", "CLD", 0'
  sig_num='0, 2, 3, 4, 8, 9, 11, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 25, 18, 0'
  signal_t='void'
- sitearch='~INST_TOP~\lib\site\~archname~'
- sitearchexp='~INST_TOP~\lib\site\~archname~'
- sitelib='~INST_TOP~\lib\site'
- sitelibexp='~INST_TOP~\lib\site'
+ sitearch=''
+ sitearchexp=''
 -sitelib='~INST_TOP~\lib\site'
 -sitelibexp='~INST_TOP~\lib\site'
++sitelib='~INST_TOP~\..\site\~VERSION~\lib'
++sitelibexp='~INST_TOP~\..\site\~VERSION~\lib'
  sizetype='size_t'
  sleep=''
  smail=''
diff --cc win32/config.gc
@@@ -367,14 -367,14 +367,14 @@@ i_varhdr='varargs.h
  i_vfork='undef'
  incpath=''
  inews=''
 -installarchlib=''
 -installbin='~INST_TOP~\bin'
 +installarchlib='~INST_TOP~\lib\~archname~'
- installbin='~INST_TOP~\bin'
++installbin='~INST_TOP~\bin\~archname~'
  installman1dir='~INST_TOP~\man\man1'
  installman3dir='~INST_TOP~\man\man3'
  installprivlib='~INST_TOP~\lib'
  installscript='~INST_TOP~\bin'
- installsitearch='~INST_TOP~\lib\site\~archname~'
- installsitelib='~INST_TOP~\lib\site'
 -installsitearch=''
 -installsitelib='~INST_TOP~\lib\site'
++installsitearch='~INST_TOP~\..\site\~VERSION~\lib\~archname~'
++installsitelib='~INST_TOP~\..\site\~VERSION~\lib'
  intsize='4'
  known_extensions='DB_File Fcntl GDBM_File NDBM_File ODBM_File Opcode POSIX SDBM_File Socket IO attrs Thread'
  ksh=''
@@@ -450,7 -450,7 +450,7 @@@ patchlevel='2
  path_sep=';'
  perl='perl'
  perladmin=''
--perlpath='~INST_TOP~\bin\perl.exe'
++perlpath='~INST_TOP~\bin\~archname~\perl.exe'
  pg=''
  phostname='hostname'
  pidtype='int'
@@@ -485,10 -485,10 +485,10 @@@ sig_name='ZERO INT QUIT ILL FPE KILL SE
  sig_name_init='"ZERO", "INT", "QUIT", "ILL", "FPE", "KILL", "SEGV", "PIPE", "ALRM", "TERM", "CHLD", "BREAK", "ABRT", "STOP", "CONT", "CLD", 0'
  sig_num='0, 2, 3, 4, 8, 9, 11, 13, 14, 15, 20, 21, 22, 23, 25, 20, 0'
  signal_t='void'
- sitearch='~INST_TOP~\lib\site\~archname~'
- sitearchexp='~INST_TOP~\lib\site\~archname~'
- sitelib='~INST_TOP~\lib\site'
- sitelibexp='~INST_TOP~\lib\site'
+ sitearch=''
+ sitearchexp=''
 -sitelib='~INST_TOP~\lib\site'
 -sitelibexp='~INST_TOP~\lib\site'
++sitelib='~INST_TOP~\..\site\~VERSION~\lib'
++sitelibexp='~INST_TOP~\..\site\~VERSION~\lib'
  sizetype='size_t'
  sleep=''
  smail=''
diff --cc win32/config.vc
@@@ -21,8 -21,8 +21,8 @@@ afs='false
  alignbytes='8'
  aphostname=''
  ar='lib'
- archlib='~INST_TOP~\lib\~archname~'
- archlibexp='~INST_TOP~\lib\~archname~'
+ archlib=''
 -archlibexp='~INST_TOP~\lib\~archname~'
++archlibexp=''
  archname='MSWin32'
  archobjs=''
  awk='awk'
@@@ -34,8 -34,8 +34,8 @@@
   *    This symbol is the filename expanded version of the BIN symbol, for
   *    programs that do not want to deal with that at run-time.
   */
--#define BIN "c:\\perl5004.5x\\bin"    /**/
--#define BIN_EXP "c:\\perl5004.5x\\bin"        /**/
++#define BIN "c:\\perl\\5004.5x\\bin"  /**/
++#define BIN_EXP "c:\\perl\\5004.5x\\bin"      /**/
  
  /* CPPSTDIN:
   *    This symbol contains the first part of the string which will invoke
   *    This symbol contains the ~name expanded version of ARCHLIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
- #define ARCHLIB "c:\\perl5004.5x\\lib\\MSWin32-x86"           /**/
- #define ARCHLIB_EXP (win32_perllib_path(ARCHNAME,NULL))       /**/
 -/* #define ARCHLIB "c:\\perl5004.5x\\lib\\MSWin32-x86"                /**/
 -/* #define ARCHLIB_EXP (win32_perllib_path(ARCHNAME,NULL))    /**/
++/*#define ARCHLIB ""          /**/
++/*#define ARCHLIB_EXP ""              /**/
  
  /* CAT2:
   *    This macro catenates 2 tokens together.
   *    This symbol contains the ~name expanded version of PRIVLIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
--#define PRIVLIB "c:\\perl5004.5x\\lib"                /**/
- #define PRIVLIB_EXP (win32_perllib_path(NULL))        /**/
++#define PRIVLIB "c:\\perl\\5004.5x\\lib"              /**/
+ #define PRIVLIB_EXP (win32_get_stdlib(patchlevel))    /**/
  
  /* SIG_NAME:
   *    This symbol contains a list of signal names in order of
   *    This symbol contains the ~name expanded version of SITEARCH, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
- #define SITEARCH "c:\\perl5004.5x\\lib\\site\\MSWin32-x86"            /**/
- #define SITEARCH_EXP (win32_perllib_path("site",ARCHNAME,NULL))       /**/
 -/* #define SITEARCH "c:\\perl5004.5x\\lib\\site\\MSWin32-x86"         /**/
 -/* #define SITEARCH_EXP (win32_perllib_path("site",ARCHNAME,NULL))    /**/
++#define SITEARCH ""           /**/
++#define SITEARCH_EXP ""               /**/
  
  /* SITELIB:
   *    This symbol contains the name of the private library for this package.
   *    This symbol contains the ~name expanded version of SITELIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
--#define SITELIB "c:\\perl5004.5x\\lib\\site"          /**/
- #define SITELIB_EXP (win32_perllib_path("site",NULL)) /**/
++#define SITELIB "c:\\perl\\5004.5x\\..\\site\\5.00466\\lib"           /**/
+ #define SITELIB_EXP (win32_get_sitelib(patchlevel))   /**/
  
  /* DLSYM_NEEDS_UNDERSCORE:
   *    This symbol, if defined, indicates that we need to prepend an
@@@ -34,8 -34,8 +34,8 @@@
   *    This symbol is the filename expanded version of the BIN symbol, for
   *    programs that do not want to deal with that at run-time.
   */
--#define BIN "c:\\perl5004.5x\\bin"    /**/
--#define BIN_EXP "c:\\perl5004.5x\\bin"        /**/
++#define BIN "c:\\perl\\5004.5x\\bin"  /**/
++#define BIN_EXP "c:\\perl\\5004.5x\\bin"      /**/
  
  /* CPPSTDIN:
   *    This symbol contains the first part of the string which will invoke
   *    This symbol contains the ~name expanded version of ARCHLIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
- #define ARCHLIB "c:\\perl5004.5x\\lib\\MSWin32-x86"           /**/
- #define ARCHLIB_EXP (win32_perllib_path(ARCHNAME,NULL))       /**/
 -/* #define ARCHLIB "c:\\perl5004.5x\\lib\\MSWin32-x86"                /**/
 -/* #define ARCHLIB_EXP (win32_perllib_path(ARCHNAME,NULL))    /**/
++/*#define ARCHLIB ""          /**/
++/*#define ARCHLIB_EXP ""              /**/
  
  /* CAT2:
   *    This macro catenates 2 tokens together.
   *    This symbol contains the ~name expanded version of PRIVLIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
--#define PRIVLIB "c:\\perl5004.5x\\lib"                /**/
- #define PRIVLIB_EXP (win32_perllib_path(NULL))        /**/
++#define PRIVLIB "c:\\perl\\5004.5x\\lib"              /**/
+ #define PRIVLIB_EXP (win32_get_stdlib(patchlevel))    /**/
  
  /* SIG_NAME:
   *    This symbol contains a list of signal names in order of
   *    This symbol contains the ~name expanded version of SITEARCH, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
- #define SITEARCH "c:\\perl5004.5x\\lib\\site\\MSWin32-x86"            /**/
- #define SITEARCH_EXP (win32_perllib_path("site",ARCHNAME,NULL))       /**/
 -/* #define SITEARCH "c:\\perl5004.5x\\lib\\site\\MSWin32-x86"         /**/
 -/* #define SITEARCH_EXP (win32_perllib_path("site",ARCHNAME,NULL))    /**/
++#define SITEARCH ""           /**/
++#define SITEARCH_EXP ""               /**/
  
  /* SITELIB:
   *    This symbol contains the name of the private library for this package.
   *    This symbol contains the ~name expanded version of SITELIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
--#define SITELIB "c:\\perl5004.5x\\lib\\site"          /**/
- #define SITELIB_EXP (win32_perllib_path("site",NULL)) /**/
++#define SITELIB "c:\\perl\\5004.5x\\..\\site\\5.00466\\lib"           /**/
+ #define SITELIB_EXP (win32_get_sitelib(patchlevel))   /**/
  
  /* DLSYM_NEEDS_UNDERSCORE:
   *    This symbol, if defined, indicates that we need to prepend an
@@@ -34,8 -34,8 +34,8 @@@
   *    This symbol is the filename expanded version of the BIN symbol, for
   *    programs that do not want to deal with that at run-time.
   */
--#define BIN "c:\\perl5004.5x\\bin"    /**/
--#define BIN_EXP "c:\\perl5004.5x\\bin"        /**/
++#define BIN "c:\\perl\\5004.5x\\bin"  /**/
++#define BIN_EXP "c:\\perl\\5004.5x\\bin"      /**/
  
  /* CPPSTDIN:
   *    This symbol contains the first part of the string which will invoke
   *    This symbol contains the ~name expanded version of ARCHLIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
- #define ARCHLIB "c:\\perl5004.5x\\lib\\MSWin32-x86"           /**/
- #define ARCHLIB_EXP (win32_perllib_path(ARCHNAME,NULL))       /**/
 -/* #define ARCHLIB "c:\\perl5004.5x\\lib\\MSWin32-x86"        /**/
 -/* #define ARCHLIB_EXP (win32_perllib_path(ARCHNAME,NULL))    /**/
++/*#define ARCHLIB ""          /**/
++/*#define ARCHLIB_EXP ""              /**/
  
  /* CAT2:
   *    This macro catenates 2 tokens together.
   *    This symbol contains the ~name expanded version of PRIVLIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
--#define PRIVLIB "c:\\perl5004.5x\\lib"                /**/
- #define PRIVLIB_EXP (win32_perllib_path(NULL))        /**/
++#define PRIVLIB "c:\\perl\\5004.5x\\lib"              /**/
+ #define PRIVLIB_EXP (win32_get_stdlib(patchlevel))    /**/
  
  /* SIG_NAME:
   *    This symbol contains a list of signal names in order of
   *    This symbol contains the ~name expanded version of SITEARCH, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
- #define SITEARCH "c:\\perl5004.5x\\lib\\site\\MSWin32-x86"            /**/
- #define SITEARCH_EXP (win32_perllib_path("site",ARCHNAME,NULL))       /**/
 -/* #define SITEARCH "c:\\perl5004.5x\\lib\\site\\MSWin32-x86"         /**/
 -/* #define SITEARCH_EXP (win32_perllib_path("site",ARCHNAME,NULL))    /**/
++#define SITEARCH ""           /**/
++#define SITEARCH_EXP ""               /**/
  
  /* SITELIB:
   *    This symbol contains the name of the private library for this package.
   *    This symbol contains the ~name expanded version of SITELIB, to be used
   *    in programs that are not prepared to deal with ~ expansion at run-time.
   */
--#define SITELIB "c:\\perl5004.5x\\lib\\site"          /**/
- #define SITELIB_EXP (win32_perllib_path("site",NULL)) /**/
++#define SITELIB "c:\\perl\\5004.5x\\..\\site\\5.00466\\lib"           /**/
+ #define SITELIB_EXP (win32_get_sitelib(patchlevel))   /**/
  
  /* DLSYM_NEEDS_UNDERSCORE:
   *    This symbol, if defined, indicates that we need to prepend an
@@@ -13,7 -13,7 +13,7 @@@
  # Set these to wherever you want "nmake install" to put your
  # newly built perl.
  INST_DRV      *= c:
--INST_TOP      *= $(INST_DRV)\perl5004.5x
++INST_TOP      *= $(INST_DRV)\perl\5004.5x
  
  #
  # uncomment to enable threads-capabilities
@@@ -27,6 -27,10 +27,11 @@@ CCTYPE              *= BORLAN
  #CCTYPE               *= GCC
  
  #
+ # uncomment next line if you want to use the perl object
 -OBJECT                *= -DPERL_OBJECT
++# Currently, this cannot be enabled if you ask for threads above
++#OBJECT               *= -DPERL_OBJECT
+ #
  # uncomment next line if you want debug version of perl (big,slow)
  #CFG          *= Debug
  
@@@ -46,8 -50,8 +51,9 @@@
  # set this if you wish to use perl's malloc
  # WARNING: Turning this on/off WILL break binary compatibility with extensions
  # you may have compiled with/without it.  Be prepared to recompile all extensions
--# if you change the default.
- PERL_MALLOC   *= define
++# if you change the default.  Currently, this cannot be enabled if you ask for
++# PERL_OBJECT above.
+ #PERL_MALLOC  *= define
  
  #
  # set the install locations of the compiler include/libraries
@@@ -511,9 -524,9 +526,13 @@@ EXTENSION_DLL     =               
                $(SDBM_FILE_DLL)\
                $(IO_DLL)       \
                $(POSIX_DLL)    \
-               $(ATTRS_DLL)    \
+               $(ATTRS_DLL)
 -#             $(THREAD_DLL)   \
 -#             $(B_DLL)
++
++.IF "$(OBJECT)" == ""
++EXTENSION_DLL +=              \
 +              $(THREAD_DLL)   \
 +              $(B_DLL)
++.ENDIF
  
  POD2HTML      = $(PODDIR)\pod2html
  POD2MAN               = $(PODDIR)\pod2man