home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / perl-5.003-base.tgz / perl-5.003-base.tar / fsf / perl / os2 / Makefile.SHs < prev    next >
Makefile  |  1996-03-25  |  2KB  |  72 lines

  1. # This file is read by Makefile.SH to produce rules for $(perllib)
  2. # We insert perl5.def since I do not know how to generate it yet.
  3.  
  4. $spitshell >>Makefile <<'!NO!SUBS!'
  5. $(perllib): perl.imp perl.dll perl5.def
  6.     emximp -o $(perllib) perl.imp
  7.  
  8. perl.imp: perl5.def
  9.     emximp -o perl.imp perl5.def
  10.  
  11. perl.dll: $(obj) perl5.def perl$(OBJ_EXT)
  12.     $(LD) $(LDDLFLAGS) -o $@ perl$(OBJ_EXT) $(obj) -lsocket perl5.def
  13.  
  14. perl5.def: perl.linkexp
  15.     echo "LIBRARY 'Perl' INITINSTANCE TERMINSTANCE"    > $@
  16.     echo DESCRIPTION "'Perl interpreter, export autogenerated'"    >>$@
  17.     echo STACKSIZE 32768                >>$@
  18.     echo CODE LOADONCALL                >>$@
  19.     echo DATA LOADONCALL NONSHARED MULTIPLE        >>$@
  20.     echo EXPORTS                    >>$@
  21.     echo '  "ctermid"'                >>$@
  22.     echo '  "Perl_OS2_init"'            >>$@
  23.     echo '  "OS2_Perl_data"'            >>$@
  24. !NO!SUBS!
  25.  
  26. if [ ! -z "$myttyname" ] ; then
  27.   $spitshell >>Makefile <<'!NO!SUBS!'
  28.     echo '  "ttyname"'                >>$@
  29. !NO!SUBS!
  30. fi
  31.  
  32. $spitshell >>Makefile <<'!NO!SUBS!'
  33.     cat perl.linkexp    >>$@
  34.  
  35. #    grep -v '"\(malloc\|realloc\|free\)"' perl.linkexp    >>$@
  36.  
  37.  
  38. # We assume here that perl is available somewhere ...
  39.  
  40. perl.exports: perl.exp EXTERN.h perl.h
  41.     (echo '#include "EXTERN.h"'; echo '#include "perl.h"' ; \
  42.             echo '#include "perl.exp"') | \
  43.         $(CC) -DEMBED  -E - | \
  44.         awk '{if ($$2 == "") print $$1}' | sort | uniq > $@
  45.  
  46. #        perl -ne 'print if (/^#!/ .. /^#\s/) && s/^(\w+) *$$/$$1/' > $@
  47.  
  48. perl.linkexp: perl.exports perl.map
  49.     cat perl.exports perl.map | sort | uniq -d | sed -e 's/\w\+/  "\0"/' > perl.linkexp
  50.  
  51. perl.map: $(obj) perl$(OBJ_EXT) miniperlmain$(OBJ_EXT)
  52.     $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o dummy.exe miniperlmain$(OBJ_EXT) perl$(OBJ_EXT) $(obj) -lsocket -lm -Zmap -Zlinker /map
  53.     awk '{if ($$3 == "") print $$2}' <dummy.map | sort | uniq > perl.map
  54.     rm dummy.exe dummy.map
  55.  
  56. depend: os2ish.h
  57.  
  58. # Stupid make? Needed...
  59. os2$(OBJ_EXT) : os2.c
  60.  
  61. os2.c: os2/os2.c os2ish.h
  62.     cp $< $@
  63.  
  64. os2ish.h: os2/os2ish.h
  65.     cp $< $@
  66.  
  67. installcmd : 
  68.     perl -e 'die qq{Give the option INSTALLCMDDIR=... to make!} if $$ARGV[0] eq ""' $(INSTALLCMDDIR)
  69.     perl os2/perl2cmd.pl $(INSTALLCMDDIR)
  70.  
  71. !NO!SUBS!
  72.