home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / a_utils / perl / mac-perl / gs_102st.bin / GUSI / Makefile < prev    next >
Encoding:
Makefile  |  1993-01-23  |  12.1 KB  |  3 lines  |  [TEXT/MPS ]

  1. MakefileTEXTMPS -dºåPºåPüüM#######################################################################
  2. #    Project    :    GUSI                -    Grand Unified Socket Interface
  3. #    File        :    Makefile            -    Build the damn thing
  4. #    Author    :    Matthias Neeracher
  5. #    Started    :    22Mar92                                Language    :    MPW Shell/Make
  6. #    Modified    :    24Mar92    MN    GUSIDispatch
  7. #                    12Apr92    MN    GUSIUnixTest
  8. #                    17Apr92    MN    Reorganize Libraries
  9. #                    19Apr92    MN    Rewrite in C++
  10. #                    12May92    MN    GUSIAtlkTest
  11. #                    06Jun92    MN    PPC Toolbox domain
  12. #                    15Jun92    MN    GUSIFSp
  13. #                    25Jul92    MN    GUSITest
  14. #                    26Jul92    MN    Rewrote GUSIAtlkTest
  15. #                    02Aug92    MN    GUSIPPCTest
  16. #                    03Aug92    MN    GUSIBuffer.cp
  17. #                    16Aug92    MN    TCP/IP files: GUSIINET.cp, GUSITCP.cp, GUSIUDP.cp
  18. #                    01Sep92    MN    Make GUSI configurable
  19. #                    08Sep92    MN    Subset libraries
  20. #                    08Sep92    MN    GUSISocketTest.c
  21. #                    24Sep92    MN    Install
  22. #                    18Oct92    MN    Separate clean and dirty variants
  23. #                    27Oct92    MN    More robust deletion
  24. #                    14Nov92    MN    Subset libraries were not working correctly
  25. #                    06Dec92    MN    Automatic Distribution
  26. #                    18Dec92    MN    Watch out for filenames with spaces
  27. #                    09Jan93    MN    Make list of targets to be built more flexible
  28. #    Last        :    09Jan93
  29. #######################################################################
  30.  
  31. #######################################################################
  32. # Include the targets you want built
  33. #
  34.  
  35. GUSI_TARGETS =    GUSI.o GUSI_F.o # GUSI_AFU.o GUSI_FIU.o GUSI_C.o
  36.  
  37. #######################################################################
  38. # You might not need to change anything below this line 
  39. #
  40.  
  41. GUSI_SOURCES =                            ╢
  42.         GUSIFSp.cp                        ╢
  43.         GUSIDispatch.cp                ╢
  44.         GUSISocket.cp                    ╢
  45.         GUSIFile.cp                        ╢
  46.         GUSISIOW.cp                        ╢
  47.         GUSIBuffer.cp                    ╢
  48.         GUSIUnix.cp                        ╢
  49.         GUSIAppleTalk.cp                ╢
  50.         GUSIPPC.cp                        ╢
  51.         GUSIINET.cp                        ╢
  52.         GUSITCP.cp                        ╢
  53.         GUSIUDP.cp                        ╢
  54.         GUSINetDB.cp    
  55.         
  56. GUSI_HEADERS =                                    ╢
  57.         GUSI.h                                    ╢
  58.         GUSI_P.h                                    ╢
  59.         TFileSpec.h                                ╢
  60.         dirent.h                                    ╢
  61.         'sys/stat.h'                            ╢
  62.         :Headers:'machine/machtypes.h'    ╢
  63.         :Headers:netdb.h                        ╢
  64.         :Headers:'netinet/in.h'                ╢
  65.         :Headers:'netinet/tcp.h'            ╢
  66.         :Headers:'sys/errno.h'                ╢
  67.         :Headers:'sys/fcntl.h'                ╢
  68.         :Headers:'sys/file.h'                ╢
  69.         :Headers:'sys/ioctl.h'                ╢
  70.         :Headers:'sys/ioctl_compat.h'        ╢
  71.         :Headers:'sys/socket.h'                ╢
  72.         :Headers:'sys/time.h'                ╢
  73.         :Headers:'sys/ttychars.h'            ╢
  74.         :Headers:'sys/ttydev.h'                ╢
  75.         :Headers:'sys/types.h'                ╢
  76.         :Headers:'sys/uio.h'                    ╢
  77.         :Headers:'sys/unistd.h'
  78.  
  79. INSTALLED_HEADERS =                            ╢
  80.         "{CIncludes}GUSI.h"                    ╢
  81.         "{CIncludes}GUSI_P.h"                ╢
  82.         "{CIncludes}GUSIRsrc_P.h"            ╢
  83.         "{CIncludes}TFileSpec.h"            ╢
  84.         "{CIncludes}dirent.h"                ╢
  85.         "{CIncludes}sys/stat.h"                ╢
  86.         "{CIncludes}machine/machtypes.h"    ╢
  87.         "{CIncludes}netdb.h"                    ╢
  88.         "{CIncludes}netinet/in.h"            ╢
  89.         "{CIncludes}netinet/tcp.h"            ╢
  90.         "{CIncludes}sys/errno.h"            ╢
  91.         "{CIncludes}sys/fcntl.h"            ╢
  92.         "{CIncludes}sys/file.h"                ╢
  93.         "{CIncludes}sys/ioctl.h"            ╢
  94.         "{CIncludes}sys/ioctl_compat.h"    ╢
  95.         "{CIncludes}sys/socket.h"            ╢
  96.         "{CIncludes}sys/time.h"                ╢
  97.         "{CIncludes}sys/ttychars.h"        ╢
  98.         "{CIncludes}sys/ttydev.h"            ╢
  99.         "{CIncludes}sys/types.h"            ╢
  100.         "{CIncludes}sys/uio.h"                ╢
  101.         "{CIncludes}sys/unistd.h"
  102.  
  103. GUSI_OBJECTS =                        ╢
  104.         GUSIFSp.cp.o                ╢
  105.         GUSIDispatch.cp.o            ╢
  106.         GUSISocket.cp.o            ╢
  107.         GUSIFile.cp.o                ╢
  108.         GUSISIOW.cp.o                ╢
  109.         GUSIBuffer.cp.o            ╢
  110.         GUSIUnix.cp.o                ╢
  111.         GUSIAppleTalk.cp.o        ╢
  112.         GUSIPPC.cp.o                ╢
  113.         GUSIINET.cp.o                ╢
  114.         GUSITCP.cp.o                ╢
  115.         GUSIUDP.cp.o                ╢
  116.         GUSINetDB.cp.o
  117.  
  118. GUSI_F_OBJECTS =                    ╢
  119.         GUSIFSp.cp.o                ╢
  120.         GUSIDispatch.cp.o            ╢
  121.         GUSISocket.cp.o            ╢
  122.         GUSIFile.cp.o                ╢
  123.         GUSISIOW.cp.o                ╢
  124.         GUSIBuffer.cp.o
  125.  
  126. GUSI_AFU_OBJECTS =                ╢
  127.         GUSIFSp.cp.o                ╢
  128.         GUSIDispatch.cp.o            ╢
  129.         GUSISocket.cp.o            ╢
  130.         GUSIFile.cp.o                ╢
  131.         GUSISIOW.cp.o                ╢
  132.         GUSIBuffer.cp.o            ╢
  133.         GUSIUnix.cp.o                ╢
  134.         GUSIAppleTalk.cp.o
  135.  
  136. GUSI_FIU_OBJECTS =                ╢
  137.         GUSIFSp.cp.o                ╢
  138.         GUSIDispatch.cp.o            ╢
  139.         GUSISocket.cp.o            ╢
  140.         GUSIFile.cp.o                ╢
  141.         GUSISIOW.cp.o                ╢
  142.         GUSIBuffer.cp.o            ╢
  143.         GUSIUnix.cp.o                ╢
  144.         GUSIINET.cp.o                ╢
  145.         GUSITCP.cp.o                ╢
  146.         GUSIUDP.cp.o                ╢
  147.         GUSINetDB.cp.o
  148.  
  149. GUSI_DOC =                            ╢
  150.         GUSI.web                        ╢
  151.         GUSI.tex                        ╢
  152.         GUSI.ps                        ╢
  153.         README
  154.  
  155. GUSI_LIB =                            ╢
  156.         GUSI.o                        ╢
  157.         GUSI_F.o                        ╢
  158.         GUSI.r                        ╢
  159.         GUSI.rsrc
  160.  
  161. GUSI_TEST =                            ╢
  162.         GUSITest.c                    ╢
  163.         GUSITest.h                    ╢
  164.         GUSITest.r                    ╢
  165.         GUSITest.rsrc                ╢
  166.         GUSITest_P.h                ╢
  167.         GUSISocketTest.c            ╢
  168.         GUSIAtlkTest.c                ╢
  169.         GUSIFileTest.c                ╢
  170.         GUSIINETTest.c                ╢
  171.         GUSIPPCTest.c                ╢
  172.         GUSIUnixTest.c                ╢
  173.         GUSIUnixTest.r    
  174.         
  175. GUSI_MISC =                            ╢
  176.         MakeAliases                    ╢
  177.         Internalize                    ╢
  178.         Distribution                ╢
  179.         SafeDel                        ╢
  180.         Aliases                        ╢
  181.         GUSI.dn                        ╢
  182.         GUSI.ext                        ╢
  183.         GUSI_C.dn                    ╢
  184.         GUSIINET_P.h                ╢
  185.         GUSIRsrc_P.h                ╢
  186.         Makefile
  187.  
  188. GUSI_DISTR    =                        ╢
  189.         {GUSI_SOURCES}             ╢
  190.         {GUSI_HEADERS}                ╢
  191.         {GUSI_DOC}                     ╢
  192.         {GUSI_LIB}                     ╢
  193.         {GUSI_TEST}                    ╢
  194.         {GUSI_MISC}
  195.         
  196. Debug    =    
  197.  
  198. COptions = -r -mbg on -sym on
  199. CPlusOptions = -mf -mbg on -sym on {Debug}
  200. LOptions    = -sym on -mf -w
  201.     
  202. Alias.dump ─  "{Libraries}Runtime.o" "{CLibraries}StdCLib.o" "{CLibraries}CPlusLib.o"
  203.     DumpObj -mods "{Libraries}Runtime.o" > Alias.dump
  204.     DumpObj -mods "{CLibraries}StdCLib.o" >> Alias.dump
  205.     DumpObj -mods "{CLibraries}CPlusLib.o" >> Alias.dump
  206.  
  207. Alias.rn    ─    Aliases Alias.dump
  208.     MakeAliases Alias.dump
  209.  
  210. GUSI.dn        ─    preGUSI.o GUSI.ext
  211.     DumpObj -mods preGUSI.o    | Internalize
  212.  
  213.  
  214. StdLib.o    ─ Alias.rn
  215.     Lib -w -o StdLib.o            ╢
  216.         -sg GUSILib=Main            ╢
  217.         `Catenate Alias.rn`        ╢
  218.         "{Libraries}Runtime.o"    ╢
  219.         "{CLibraries}StdCLib.o"    ╢
  220.         "{CLibraries}CPlusLib.o"╢
  221.         "{Libraries}dnr.o"        ╢
  222.         -df Alias1.df
  223.  
  224. #######################################################################
  225. # The full library
  226. #
  227.  
  228. preGUSI.o    ─    {GUSI_OBJECTS} Alias.rn StdLib.o
  229.     Lib -w -o preGUSI.o            ╢
  230.         {GUSI_OBJECTS}                ╢
  231.         StdLib.o                        ╢
  232.         -sg Main=GUSIResident    ╢
  233.         -df Alias.df
  234.  
  235. GUSI.o        ─    preGUSI.o GUSI.dn
  236.     Set Echo 0
  237.     Echo Lib -w -o GUSI.o ...
  238.     Lib -w -o GUSI.o preGUSI.o `Catenate GUSI.dn`
  239.     Set Echo 1
  240.  
  241. #######################################################################
  242. # Variants of the full library
  243. # The name is GUSI_X, where X may consist of the following letters
  244. # in alphabetical order:
  245. #            
  246. #        A        AppleTalk
  247. #        C        Clean namespace
  248. #        F        Files & General (mandatory)
  249. #        I        Internet
  250. #        P        PPC Toolbox
  251. #        U        Unix domain
  252. #
  253.  
  254. #######################################################################
  255. # Clean namespace
  256. #
  257.  
  258. GUSI_C.o        ─    GUSI.o GUSI.dn
  259.     Lib -o GUSI_C.o                ╢
  260.         GUSI.o                        ╢
  261.         `Catenate GUSI_C.dn`
  262.     
  263.  
  264. #######################################################################
  265. # Only file system stuff, no sockets
  266. #
  267.  
  268. preGUSI_F.o    ─    {GUSI_F_OBJECTS} Alias.rn StdLib.o
  269.     Lib -w -o preGUSI_F.o        ╢
  270.         {GUSI_F_OBJECTS}            ╢
  271.         StdLib.o                        ╢
  272.         -sg Main=GUSIResident    ╢
  273.         -df Alias.df
  274.  
  275. GUSI_F.o            ─    preGUSI_F.o
  276.     Set Echo 0
  277.     Echo Lib -w -o GUSI_F.o ...
  278.     Lib -w -o GUSI_F.o preGUSI_F.o `Catenate GUSI.dn`
  279.     Set Echo 1
  280.  
  281. #######################################################################
  282. # No MacTCP, no System 7
  283. #
  284.  
  285. preGUSI_AFU.o    ─    {GUSI_AFU_OBJECTS} Alias.rn StdLib.o
  286.     Lib -w -o preGUSI_AFU.o        ╢
  287.         {GUSI_AFU_OBJECTS}        ╢
  288.         StdLib.o                        ╢
  289.         -sg Main=GUSIResident    ╢
  290.         -df Alias.df
  291.  
  292. GUSI_AFU.o            ─    preGUSI_AFU.o
  293.     Set Echo 0
  294.     Echo Lib -w -o GUSI_AFU.o ...
  295.     Lib -w -o GUSI_AFU.o preGUSI_AFU.o `Catenate GUSI.dn`
  296.     Set Echo 1
  297.  
  298. #######################################################################
  299. # What you would expect in an Unix application
  300. #
  301.  
  302. preGUSI_FIU.o    ─    {GUSI_FIU_OBJECTS} Alias.rn StdLib.o
  303.     Lib -w -o preGUSI_FIU.o        ╢
  304.         {GUSI_FIU_OBJECTS}        ╢
  305.         StdLib.o                        ╢
  306.         -sg Main=GUSIResident    ╢
  307.         -df Alias.df
  308.  
  309. GUSI_FIU.o            ─    preGUSI_FIU.o
  310.     Set Echo 0
  311.     Echo Lib -w -o GUSI_FIU.o ...
  312.     Lib -w -o GUSI_FIU.o preGUSI_FIU.o `Catenate GUSI.dn`
  313.     Set Echo 1
  314.  
  315. GUSI.tex            ─    GUSI.web
  316.     cweave GUSI
  317.     
  318. GUSI.dvi            ─    GUSI.tex
  319.     tex GUSI
  320.     
  321. GUSI                 ─    {GUSI_TARGETS} GUSI.dvi
  322.  
  323. Install            ─
  324.     Set OldExit {Exit}
  325.     Set Exit 0
  326.     Backup -a -c {GUSI_TARGETS}                      -to "{CLibraries}"    > DoInstall
  327.     Backup -a -c {GUSI_HEADERS} GUSIRsrc_P.h      -to "{CIncludes}"    >>DoInstall
  328.     Backup -a -c GUSI.r GUSI.rsrc    GUSIRsrc_P.h -to "{RIncludes}"    >>DoInstall
  329.     DoInstall 
  330.     Delete DoInstall
  331.     Set Exit {OldExit}
  332.  
  333. Uninstall        ─
  334.     Delete -i "{CLibraries}GUSI.o" "{CLibraries}GUSI_F.o"
  335.     Delete -i {INSTALLED_HEADERS}
  336.     Delete -i "{RIncludes}GUSI.r" "{RIncludes}GUSI.rsrc" "{RIncludes}GUSIRsrc_P.h" 
  337.     
  338. GUSITest            ─    GUSIFileTest                        ╢
  339.                         GUSIUnixTest    GUSIUnixTest2    ╢
  340.                         GUSIAtlkTest    GUSIAtlkTest2    ╢
  341.                         GUSIPPCTest        GUSIPPCTest2    ╢
  342.                         GUSIINETTest    GUSIINETTest2
  343.  
  344. GUSICleanDep    ─
  345.     :SafeDel '┼.dn' '┼.rn' '┼.df'
  346.  
  347. Clean    ─
  348.     :SafeDel '┼.dn' '┼.rn' '┼.df' '┼.o' '┼.toc' '┼.tex' '┼.log' '┼.dump' '┼.sym'
  349.  
  350. RealClean ─    Clean
  351.     :SafeDel '┼.dvi' '┼.ps' '-t APPL'
  352.  
  353. Distr ─
  354.     :Distribution {GUSI_DISTR} :GUSI
  355.     
  356. GUSITest.r        ─    GUSITest.rsrc
  357.  
  358. GUSIFileTest     ──    GUSI.o GUSIFileTest.c.o GUSITest.c.o
  359.     Link {LOptions} -t APPL -c '????' -o GUSIFileTest    ╢
  360.         GUSIFileTest.c.o                                            ╢
  361.         GUSITest.c.o                                                ╢
  362.         GUSI.o                                                        ╢
  363.         "{Libraries}SIOW.o"                                        ╢
  364.         "{Libraries}Runtime.o"                                    ╢
  365.         "{Libraries}Interface.o"                                ╢
  366.         "{CLibraries}StdCLib.o"                                    ╢
  367.         "{Libraries}ToolLibs.o"
  368.  
  369. GUSIFileTest    ──    GUSITest.r    
  370.     Rez -a -o GUSIFileTest GUSITest.r
  371.  
  372. GUSIUnixTest ── GUSI.o GUSIUnixTest.c.o GUSITest.c.o GUSISocketTest.c.o
  373.     Link {LOptions} -t APPL -c '????' -o GUSIUnixTest    ╢
  374.         GUSIUnixTest.c.o                                            ╢
  375.         GUSITest.c.o                                                ╢
  376.         GUSISocketTest.c.o                                        ╢
  377.         GUSI.o                                                        ╢
  378.         "{Libraries}SIOW.o"                                        ╢
  379.         "{Libraries}Runtime.o"                                    ╢
  380.         "{Libraries}Interface.o"                                ╢
  381.         "{CLibraries}StdCLib.o"                                    ╢
  382.         "{Libraries}ToolLibs.o"    
  383.     
  384. GUSIUnixTest    ──    GUSI.rsrc GUSITest.rsrc GUSITest.r    
  385.     Rez -a -o GUSIUnixTest GUSITest.r
  386.     SetFile -t APPL -c '????' -a M GUSIUnixTest
  387.  
  388. GUSIUnixTest2    ─    GUSIUnixTest
  389.     Duplicate -y GUSIUnixTest GUSIUnixTest2
  390.  
  391. GUSIAtlkTest ── GUSI.o GUSIAtlkTest.c.o GUSITest.c.o GUSISocketTest.c.o
  392.     Link {LOptions} -t APPL -c '????' -o GUSIAtlkTest    ╢
  393.         GUSIAtlkTest.c.o                                            ╢
  394.         GUSITest.c.o                                                ╢
  395.         GUSISocketTest.c.o                                        ╢
  396.         GUSI.o                                                         ╢
  397.         "{Libraries}SIOW.o"                                        ╢
  398.         "{Libraries}Runtime.o"                                    ╢
  399.         "{Libraries}Interface.o"                                ╢
  400.         "{CLibraries}StdCLib.o"                                    ╢
  401.         "{Libraries}ToolLibs.o"    
  402.  
  403. GUSIAtlkTest    ──    GUSI.rsrc GUSITest.rsrc GUSITest.r
  404.     Rez -a -o GUSIAtlkTest GUSITest.r
  405.     SetFile -t APPL -c '????' -a M GUSIAtlkTest
  406.  
  407. GUSIAtlkTest2    ─    GUSIAtlkTest
  408.     Duplicate -y GUSIAtlkTest GUSIAtlkTest2
  409.  
  410. GUSIPPCTest ── GUSI.o GUSIPPCTest.c.o GUSITest.c.o GUSISocketTest.c.o
  411.     Link {LOptions} -t APPL -c '????' -o GUSIPPCTest    ╢
  412.         GUSIPPCTest.c.o                                            ╢
  413.         GUSITest.c.o                                                ╢
  414.         GUSISocketTest.c.o                                        ╢
  415.         GUSI.o                                                         ╢
  416.         "{Libraries}SIOW.o"                                        ╢
  417.         "{Libraries}Runtime.o"                                    ╢
  418.         "{Libraries}Interface.o"                                ╢
  419.         "{CLibraries}StdCLib.o"                                    ╢
  420.         "{Libraries}ToolLibs.o"    
  421.     
  422. GUSIPPCTest    ──    GUSI.rsrc GUSITest.rsrc GUSITest.r
  423.     Rez -a -o GUSIPPCTest GUSITest.r
  424.     SetFile -t APPL -c '????' -a M GUSIPPCTest
  425.  
  426. GUSIPPCTest2    ─    GUSIPPCTest
  427.     Duplicate -y GUSIPPCTest GUSIPPCTest2
  428.  
  429. GUSIINETTest ── GUSI.o GUSIINETTest.c.o GUSITest.c.o GUSISocketTest.c.o
  430.     Link {LOptions} -t APPL -c '????' -o GUSIINETTest    ╢
  431.         GUSIINETTest.c.o                                            ╢
  432.         GUSITest.c.o                                                ╢
  433.         GUSISocketTest.c.o                                        ╢
  434.         GUSI.o                                                         ╢
  435.         "{Libraries}SIOW.o"                                        ╢
  436.         "{Libraries}Runtime.o"                                    ╢
  437.         "{Libraries}Interface.o"                                ╢
  438.         "{CLibraries}StdCLib.o"                                    ╢
  439.         "{Libraries}ToolLibs.o"    
  440.     
  441. GUSIINETTest    ──    GUSI.rsrc GUSITest.rsrc GUSITest.r
  442.     Rez -a -o GUSIINETTest GUSITest.r
  443.     SetFile -t APPL -c '????' -a M GUSIINETTest
  444.  
  445. GUSIINETTest2    ─    GUSIINETTest
  446.     Duplicate -y GUSIINETTest GUSIINETTest2
  447. ⁿⁿhA┤ AStructMacsA≈ñ1Θ@ÑHMakefileTEXTMPS ¼TEXTMPS ¼Ñ≥░¼-dA■ñ1Θ@Ñ┘▓eöÄÆ└ ° ≡A┤    CIncludestA■ñ1Θ@ÑH╖∩öÄÆ└ ° ≡pⁿ"²l?σ20 ºW■ƺW■ƪqI∩┐╛
  448. GUSI║
  449. blocksberg10Makefile"Watchout for filenames with spacesH    Monaco##################
  450. #    Proj<$▌=<$▌=ºå╘àà'W LastChange<$▌=<$▌='ⁿⁿhI¬┤*^MPSRckid6φ  t∩  └≡  ┌O▐`Ç    Projector