Change 11407 by pudge@pudge-mobile on 2001/07/19 02:35:46 Add Time::HiRes, and add default Makefile.mk for Digest::MD5. Fix BuildRules to accept optimization variables. Affected files ... ... //depot/maint-5.6/macperl/macos/BuildRules.mk#2 edit ... //depot/maint-5.6/macperl/macos/Makefile.mk#3 edit ... //depot/maint-5.6/macperl/macos/bundled_ext/Digest/MD5/Makefile.mk#1 add ... //depot/maint-5.6/macperl/macos/bundled_ext/Time/HiRes/HiRes.xs#2 edit ... //depot/maint-5.6/macperl/macos/config.sh#3 edit ... //depot/maint-5.6/macperl/macos/macish.c#3 edit ... //depot/maint-5.6/macperl/macos/macish.h#3 edit ... //depot/maint-5.6/macperl/macos/macperl/Makefile.mk#3 edit Differences ... ==== //depot/maint-5.6/macperl/macos/BuildRules.mk#2 (text) ==== Index: perl/macos/BuildRules.mk --- perl/macos/BuildRules.mk.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/BuildRules.mk Wed Jul 18 20:45:06 2001 @@ -17,6 +17,13 @@ # # We try to support both CodeWarrior MPW Include models # +MWCOptimize *= +MWCPPCOptimize *= ${MWCOptimize} +MWCPPCOptimize *= ${MWCOptimize} +MPWOptimize *= +MRCOptimize *= ${MPWOptimize} +SCOptimize *= ${MPWOptimize} + CInc = MWCInc = -nosyspath -convertpaths -nodefaults -i : -i :: -i {{SFIO}}include: -i {{GUSI}}include: -i "$(CWANSIInc)" -i "{{CIncludes}}" MPWInc = -i : -i :: -i {{SFIO}}include: -i {{GUSI}}include: -i "{{CIncludes}}" @@ -26,11 +33,11 @@ MWCOpt = ${COpt} ${MWCInc} ${CInc} -w off # -w 2,3,6,7,35,29 MPWOpt = ${COpt} ${MPWInc} ${CInc} -includes unix -w off -MPWCpOpt = -i "{{STLport}}stl:" -ER -bool on -C68K = MWC68K ${MWCOpt} ${Opt68K} -CPPC = MWCPPC ${MWCOpt} ${OptPPC} -CSC = SC ${MPWOpt} ${Opt68K} -CMRC = MrC ${SFIOInc} ${MPWOpt} ${OptPPC} +MPWCpOpt = -i "{{STLport}}stl:" -ER -bool on +C68K = MWC68K ${MWCOpt} ${Opt68K} ${MWC68KOptimize} +CPPC = MWCPPC ${MWCOpt} ${OptPPC} ${MWCPPCOptimize} +CSC = SC ${MPWOpt} ${Opt68K} ${SCOptimize} +CMRC = MrC ${SFIOInc} ${MPWOpt} ${OptPPC} ${MRCOptimize} CpSC = SCpp ${MPWOpt} ${MPWCpOpt} ${Opt68K} CpMRC = MrCpp ${SFIOInc} ${MPWOpt} ${MPWCpOpt} ${OptPPC} ROptions = -i : -i "{{GUSI}}src:" -i "{{GUSI}}include:" ==== //depot/maint-5.6/macperl/macos/Makefile.mk#3 (text) ==== Index: perl/macos/Makefile.mk --- perl/macos/Makefile.mk.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/Makefile.mk Wed Jul 18 20:45:06 2001 @@ -4,88 +4,6 @@ # Author : Matthias Neeracher # Language : MPW Shell/Make # -# $Log: Makefile.mk,v $ -# Revision 1.18 2001/07/08 05:06:48 pudge -# Fix makefile for building and installing bundled libs -# -# Revision 1.17 2001/05/05 20:32:41 pudge -# Prepare for 5.6.1a2, mostly updates to tests, and File::Find, and latest changes from main repository -# -# Revision 1.16 2001/03/22 04:30:36 pudge -# Fix MrC resouce thing -# -# Revision 1.15 2001/03/22 04:23:58 pudge -# Misc. updates -# -# Revision 1.14 2001/03/20 02:34:06 pudge -# Add in missing extensions -# -# Revision 1.13 2001/01/30 13:21:12 pudge -# Re-add -# -# Revision 1.11 2001/01/30 13:13:29 pudge -# Do translators only for 68K (for now) -# -# Revision 1.10 2001/01/24 07:45:04 neeri -# Optimize some build rules to avoid rebuilds -# -# Revision 1.9 2001/01/23 07:42:15 neeri -# Support fat builds involving SC (Task 24871) -# -# Revision 1.8 2001/01/16 21:12:21 pudge -# Misc. makefile changes -# -# Revision 1.7 2001/01/09 21:57:18 pudge -# Change AutoInit to full paths -# -# Revision 1.6 2000/12/29 00:28:23 pudge -# Add additional standard extensions -# -# Revision 1.5 2000/12/25 09:49:19 neeri -# Tweak makefile -# -# Revision 1.4 2000/12/22 08:31:47 neeri -# Some build tweaks -# -# Revision 1.3 2000/09/09 22:18:25 neeri -# Dynamic libraries compile under 5.6 -# -# Revision 1.2 2000/08/21 08:22:04 neeri -# Build tweaks & forgotten files -# -# Revision 1.1 2000/08/14 01:48:17 neeri -# Checked into Sourceforge -# -# Revision 1.2 2000/01/10 02:55:12 neeri -# Adapt to CW5.3 compilers, start MPW libraries -# -# Revision 1.1 1999/12/13 01:28:35 neeri -# Added to new MacPerl build -# -# Revision 1.8 1999/01/24 05:14:02 neeri -# Various tweaks made in 1998 -# -# Revision 1.7 1998/04/21 22:27:07 neeri -# MacPerl 5.2.0r4 -# -# Revision 1.6 1998/04/07 01:47:00 neeri -# MacPerl 5.2.0r4b1 -# -# Revision 1.5 1997/11/18 00:51:41 neeri -# MacPerl 5.1.5 -# -# Revision 1.4 1997/08/08 16:38:45 neeri -# MacPerl 5.1.4b1 + time() fix -# -# Revision 1.3 1997/06/04 22:55:12 neeri -# Compiles fine. -# -# Revision 1.2 1997/05/17 21:14:31 neeri -# Last tweaks before 5.004 merge -# -# Revision 1.1 1997/04/07 20:46:25 neeri -# Synchronized with MacPerl 5.1.4a1 -# MACPERL_SRC = {$(PWD)}: @@ -209,6 +127,7 @@ Dynamic_Ext_Std = Dynamic_Ext_Xtr = Static_Ext_Xtr = \ + Time:HiRes:HiRes \ Compress:Zlib:Zlib Digest:MD5:MD5 HTML:Parser:Parser \ MIME:Base64:Base64 Storable:Storable List:Util:Util Static_Ext_Mac = \ @@ -355,7 +274,7 @@ # to prevent further builds until it is deleted. # preplibrary: miniperl - For i in :ext:{$(Static_Ext_Mac:d)} ::ext:{$(Static_Ext_Std:d)} :bundled_ext:{$(Static_Ext_Xtr:d)} + For i in :bundled_ext:{$(Static_Ext_Xtr:d)} :ext:{$(Static_Ext_Mac:d)} +::ext:{$(Static_Ext_Std:d)} directory {{i}} Set Echo 0 If `Newer Makefile.PL Makefile.mk` == "Makefile.PL" ==== //depot/maint-5.6/macperl/macos/bundled_ext/Time/HiRes/HiRes.xs#2 (text) ==== Index: perl/macos/bundled_ext/Time/HiRes/HiRes.xs --- perl/macos/bundled_ext/Time/HiRes/HiRes.xs.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/bundled_ext/Time/HiRes/HiRes.xs Wed Jul 18 20:45:06 2001 @@ -308,7 +308,41 @@ #endif #ifdef HAS_GETTIMEOFDAY +# ifdef MACOS_TRADITIONAL /* fix epoch TZ and use unsigned time_t */ +void +gettimeofday() + PREINIT: + struct timeval Tp; + struct timezone Tz; + PPCODE: + int status; + status = gettimeofday (&Tp, &Tz); + Tp.tv_sec += Tz.tz_minuteswest * 60; /* adjust for TZ */ + if (GIMME == G_ARRAY) { + EXTEND(sp, 2); + /* Mac OS (Classic) has unsigned time_t */ + PUSHs(sv_2mortal(newSVuv(Tp.tv_sec))); + PUSHs(sv_2mortal(newSViv(Tp.tv_usec))); + } else { + EXTEND(sp, 1); + PUSHs(sv_2mortal(newSVnv(Tp.tv_sec + (Tp.tv_usec / 1000000.0)))); + } + +NV +time() + PREINIT: + struct timeval Tp; + struct timezone Tz; + CODE: + int status; + status = gettimeofday (&Tp, &Tz); + Tp.tv_sec += Tz.tz_minuteswest * 60; /* adjust for TZ */ + RETVAL = Tp.tv_sec + (Tp.tv_usec / 1000000.0); + OUTPUT: + RETVAL + +# else /* MACOS_TRADITIONAL */ void gettimeofday() PREINIT: @@ -336,6 +370,7 @@ OUTPUT: RETVAL +# endif /* MACOS_TRADITIONAL */ #endif #if defined(HAS_GETITIMER) && defined(HAS_SETITIMER) ==== //depot/maint-5.6/macperl/macos/config.sh#3 (text) ==== Index: perl/macos/config.sh --- perl/macos/config.sh.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/config.sh Wed Jul 18 20:45:06 2001 @@ -418,7 +418,7 @@ eunicefix=':' exe_ext='' expr='expr' -extensions='B ByteLoader Data/Dumper DB_File Devel/DProf Devel/Peek DynaLoader Fcntl File/Glob IO NDBM_File Opcode POSIX Socket Sys/Hostname attrs re Compress/Zlib Digest/MD5 HTML/Parser MIME/Base64 Storable List/Util' +extensions='B ByteLoader Data/Dumper DB_File Devel/DProf Devel/Peek DynaLoader Fcntl +File/Glob IO NDBM_File Opcode POSIX Socket Sys/Hostname attrs re Compress/Zlib +Digest/MD5 HTML/Parser List/Util MIME/Base64 Storable Time/HiRes' fflushNULL='define' fflushall='undef' find='' @@ -735,7 +735,7 @@ ssizetype='ssize_t' startperl="Perl -Sx \"{0}\" {\"Parameters\"}; Exit {Status}\n#!perl" startsh='' -static_ext='B ByteLoader Data/Dumper DB_File Devel/DProf Devel/Peek DynaLoader Fcntl File/Glob IO NDBM_File Opcode POSIX Socket Sys/Hostname attrs re Compress/Zlib Digest/MD5 HTML/Parser MIME/Base64 Storable List/Util' +static_ext='B ByteLoader Data/Dumper DB_File Devel/DProf Devel/Peek DynaLoader Fcntl +File/Glob IO NDBM_File Opcode POSIX Socket Sys/Hostname attrs re Compress/Zlib +Digest/MD5 HTML/Parser List/Util MIME/Base64 Storable Time/HiRes' stdchar='char' stdio_base='' stdio_bufsiz='' ==== //depot/maint-5.6/macperl/macos/macish.c#3 (text) ==== Index: perl/macos/macish.c --- perl/macos/macish.c.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/macish.c Wed Jul 18 20:45:06 2001 @@ -3,41 +3,6 @@ File : macish.c - Mac specific things Author : Matthias Neeracher -$Log: macish.c,v $ -Revision 1.10 2001/06/27 18:27:23 pudge -Don't add extra colon to TMPDIR; recognize "." as valid path - -Revision 1.9 2001/04/16 04:45:15 neeri -Switch from atexit() to Perl_call_atexit (MacPerl bug #232158) - -Revision 1.8 2001/04/03 12:56:57 pudge -Make kill die if sig != 0 - -Revision 1.7 2001/03/30 21:59:38 pudge -Add basic support for kill, which does nothing - -Revision 1.6 2001/03/22 04:19:32 pudge -Add prototypes for execv and execvp - -Revision 1.5 2001/03/20 02:40:25 pudge -Add times() and struct tms - -Revision 1.4 2001/02/14 03:31:55 pudge -Little fixes for bleadperl - -Revision 1.3 2000/09/09 22:18:25 neeri -Dynamic libraries compile under 5.6 - -Revision 1.2 2000/08/21 08:22:04 neeri -Build tweaks & forgotten files - -Revision 1.1 2000/08/14 01:48:17 neeri -Checked into Sourceforge - -Revision 1.1 2000/05/14 21:45:04 neeri -First build released to public - - *********************************************************************/ #define MAC_CONTEXT ==== //depot/maint-5.6/macperl/macos/macish.h#3 (text) ==== Index: perl/macos/macish.h --- perl/macos/macish.h.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/macish.h Wed Jul 18 20:45:06 2001 @@ -3,38 +3,6 @@ File : macish.h - Mac specific things Author : Matthias Neeracher -$Log: macish.h,v $ -Revision 1.9 2001/05/05 20:32:41 pudge -Prepare for 5.6.1a2, mostly updates to tests, and File::Find, and latest changes from main repository - -Revision 1.8 2001/04/17 03:53:44 pudge -Minor version/config changes, plus sync with maint-5.6/perl - -Revision 1.7 2001/03/30 21:59:38 pudge -Add basic support for kill, which does nothing - -Revision 1.6 2001/03/20 02:40:25 pudge -Add times() and struct tms - -Revision 1.5 2001/02/23 23:34:04 pudge -Add xsubpp.patch; update versions; fix missing fp.h for SC/MrC - -Revision 1.4 2000/12/22 08:31:47 neeri -Some build tweaks - -Revision 1.3 2000/09/09 22:18:25 neeri -Dynamic libraries compile under 5.6 - -Revision 1.2 2000/08/21 08:22:04 neeri -Build tweaks & forgotten files - -Revision 1.1 2000/08/14 01:48:17 neeri -Checked into Sourceforge - -Revision 1.1 2000/05/14 21:45:04 neeri -First build released to public - - *********************************************************************/ #include <Types.h> @@ -107,6 +75,11 @@ unsigned char * MacPerl_CopyC2P(const char * c, unsigned char * p); const char * MacPerl_CanonDir(const char * dir, char * buf); +/* These defined following should be defined in 5.8 in config.h */ +#define HAS_USLEEP +#define HAS_UALARM + + /* HAS_IOCTL: * This symbol, if defined, indicates that the ioctl() routine is * available to set I/O characteristics ==== //depot/maint-5.6/macperl/macos/macperl/Makefile.mk#3 (text) ==== Index: perl/macos/macperl/Makefile.mk --- perl/macos/macperl/Makefile.mk.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/macperl/Makefile.mk Wed Jul 18 20:45:06 2001 @@ -4,86 +4,22 @@ # Author : Matthias Neeracher # Language : MPW Shell/Make # -# $Log: Makefile.mk,v $ -# Revision 1.16 2001/07/08 17:48:52 pudge -# Enable MacPerl help -# -# Revision 1.15 2001/07/08 05:08:13 pudge -# Fix makefile for building and installing bundled libs -# -# Revision 1.14 2001/04/17 03:59:58 pudge -# Minor version/config changes -# -# Revision 1.13 2001/03/22 04:28:42 pudge -# Misc. updates -# -# Revision 1.12 2001/03/20 02:26:13 pudge -# Add in missing extensions -# -# Revision 1.11 2001/01/30 05:17:05 pudge -# Minor change -# -# Revision 1.10 2001/01/24 07:06:42 neeri -# Export symbols from PowerPC applications so dynamic extensions work -# -# Revision 1.9 2001/01/23 07:35:16 neeri -# Support fat builds involving SC (Task 24871) -# -# Revision 1.8 2001/01/23 05:31:47 neeri -# Make Droplet and Font LDEF buildable with SC (Tasks 24870, 24872) -# -# Revision 1.7 2001/01/16 21:01:42 pudge -# Minor changes -# -# Revision 1.6 2001/01/13 05:58:43 neeri -# Automatically create Obj folder, fix libraries for MPDroplet.code -# -# Revision 1.5 2001/01/09 21:44:59 pudge -# Add more extensions -# -# Revision 1.4 2000/12/29 00:30:16 pudge -# Temporary change for my setup -# -# Revision 1.3 2000/12/25 09:47:39 neeri -# Fix libraries for 68K build -# -# Revision 1.2 2000/12/22 08:35:45 neeri -# PPC, MrC, and SC builds work -# -# Revision 1.1 2000/12/07 08:52:13 neeri -# PPC app compiles and sort of runs -# -# Revision 1.5 1998/04/21 22:27:03 neeri -# MacPerl 5.2.0r4 -# -# Revision 1.4 1998/04/07 01:46:54 neeri -# MacPerl 5.2.0r4b1 -# -# Revision 1.3 1997/11/18 00:54:05 neeri -# MacPerl 5.1.5 -# -# Revision 1.2 1997/08/08 16:58:16 neeri -# MacPerl 5.1.4b1 -# -# Revision 1.1 1997/06/23 17:11:14 neeri -# Checked into CVS -# PERL_SRC = ::perl: MACPERL_SRC = $(PERL_SRC)macos: .INCLUDE : $(MACPERL_SRC)BuildRules.mk -DB = ::db: -XL = ::XL: +DB = $(PERL_SRC):db: +XL = $(PERL_SRC):XL: GD = :perl:macos:ext:GD:libgd: -AEGizmos = ::AEGizmos: -IC = ::IC: +AEGizmos = ::::AEGizmos: +IC = $(PERL_SRC):IC: SFIO = "{{SFIO}}" GUSI = "{{GUSI}}" -MoreFiles = ::MoreFiles: +MoreFiles = $(PERL_SRC):MoreFiles: -COpt += -i $(MACPERL_SRC) -i $(PERL_SRC) -i $(DB)include: -i ::IC: -i $(AEGizmos)include: +COpt += -i $(MACPERL_SRC) -i $(PERL_SRC) -i $(DB)include: -i $(IC) -i +$(AEGizmos)include: ApplRez = Rez -a -t APPL -c McPL -i $(MACPERL_SRC) ApplMWLOpt = ${LOpt} -xm application -d -warn ApplLink68K = MWLink68K ${ApplMWLOpt} -model far @@ -126,6 +62,7 @@ ObjectsMrC = {$(MacPerlSources) $(PerlSources)}.MrC.o Static_Ext_Xtr = \ + Time:HiRes:HiRes \ Compress:Zlib:Zlib Digest:MD5:MD5 HTML:Parser:Parser \ MIME:Base64:Base64 Storable:Storable List:Util:Util Static_Ext_Mac = \ ==== //depot/maint-5.6/macperl/macos/bundled_ext/Digest/MD5/Makefile.mk#1 (text) ==== Index: perl/macos/bundled_ext/Digest/MD5/Makefile.mk --- perl/macos/bundled_ext/Digest/MD5/Makefile.mk.~1~ Wed Jul 18 20:45:06 2001 +++ perl/macos/bundled_ext/Digest/MD5/Makefile.mk Wed Jul 18 20:45:06 2001 @@ -0,0 +1,134 @@ +# This Makefile is for the Digest::MD5 extension to perl. +# +# It was generated automatically by MakeMaker version +# 2.13 (Revision: ) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker Parameters: + +# NAME => q[Digest::MD5] +# VERSION_FROM => q[MD5.pm] +# dist => { COMPRESS=>q[gzip -9f], SUFFIX=>q[gz] } + +# --- MakeMaker constants section: +NAME = Digest::MD5 +DISTNAME = Digest-MD5 +NAME_SYM = Digest_MD5 +VERSION = 2.13 +VERSION_SYM = 2_13 +XS_VERSION = 2.13 +INST_LIB = :::::lib +INST_ARCHLIB = :::::lib +PERL_LIB = :::::lib +PERL_SRC = ::::: +MACPERL_SRC = :::::macos: +MACPERL_LIB = :::::macos:lib +PERL = :::::miniperl +FULLPERL = :::::perl +SOURCE = MD5.c + +MODULES = MD5.pm + +MWCPPCOptimize = -O1 + +.INCLUDE : $(MACPERL_SRC)BuildRules.mk + + +VERSION_MACRO = VERSION +DEFINE_VERSION = -d $(VERSION_MACRO)=""$(VERSION)"" +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -d $(XS_VERSION_MACRO)=""$(XS_VERSION)"" + +MAKEMAKER = Bird:tmp:perl:macos::lib:ExtUtils:MakeMaker.pm +MM_VERSION = 5.45 + +# FULLEXT = Pathname for extension directory (eg DBD:Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. +# ROOTEXT = Directory part of FULLEXT (eg DBD) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +FULLEXT = Digest:MD5 +BASEEXT = MD5 +ROOTEXT = Digest: +DEFINE = $(XS_DEFINE_VERSION) $(DEFINE_VERSION) + +# Handy lists of source code files: +XS_FILES= MD5.xs +C_FILES = MD5.c +H_FILES = + + +.INCLUDE : $(MACPERL_SRC)ExtBuildRules.mk + + +# --- MakeMaker dlsyms section: + +dynamic :: MD5.exp + + +MD5.exp: Makefile.PL + $(PERL) "-I$(PERL_LIB)" -e 'use ExtUtils::Mksymlists; Mksymlists("NAME" => +"Digest::MD5", "DL_FUNCS" => { }, "DL_VARS" => []);' + + +# --- MakeMaker dynamic section: + +all :: dynamic + +install :: do_install_dynamic + +install_dynamic :: do_install_dynamic + + +# --- MakeMaker static section: + +all :: static + +install :: do_install_static + +install_static :: do_install_static + + +# --- MakeMaker htmlifypods section: + +htmlifypods : pure_all + $(NOOP) + + +# --- MakeMaker processPL section: + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: + $(RM_RF) MD5.c + $(MV) Makefile.mk Makefile.mk.old + + +# --- MakeMaker realclean section: + +# Delete temporary files (via clean) and also delete installed files +realclean purge :: clean + $(RM_RF) Makefile.mk Makefile.mk.old + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd: + @$(PERL) -e "print qq{<SOFTPKG NAME=\"Digest-MD5\" VERSION=\"2,13,0,0\">\n}. +qq{\t<TITLE>Digest-MD5</TITLE>\n}. qq{\t<ABSTRACT></ABSTRACT>\n}. +qq{\t<AUTHOR></AUTHOR>\n}. qq{\t<IMPLEMENTATION>\n}. qq{\t\t<OS NAME=\"$(OSNAME)\" +/>\n}. qq{\t\t<ARCHITECTURE NAME=\"\" />\n}. qq{\t\t<CODEBASE HREF=\"\" />\n}. +qq{\t</IMPLEMENTATION>\n}. qq{</SOFTPKG>\n}" > Digest-MD5.ppd + +# --- MakeMaker postamble section: + + +# --- MakeMaker rulez section: + +install install_static install_dynamic :: + $(MACPERL_SRC)PerlInstall -l $(PERL_LIB) + +.INCLUDE : $(MACPERL_SRC)BulkBuildRules.mk + + +# End. End of Patch.