home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a524 / 35.ddi / lib / sqlforms30.mk < prev    next >
Encoding:
Text File  |  1991-03-04  |  9.3 KB  |  287 lines

  1. # $Header: forms30.mk.pp,v 6.23 90/04/04 19:55:23 atam Exp $ sqlforms30.mk.pp Copyr (c) 1986 Oracle
  2. #
  3. # sqlforms30.mk - Makefile which is used to make...
  4. #
  5. #        1) sqlforms30, runform30, generate30, convert30
  6. #            - the SQL*Forms 3.0 executables at install time.
  7. #        2) runform30x
  8. #            - the SQL*Forms 3.0 executable with user exit code
  9. #              linked in.
  10. #        3) xsqlforms30, xrunform30
  11. #            - the SQL*Forms 3.0 (X version) executables at install
  12. #              time.
  13. #        4) xrunform30x
  14. #            - the SQL*Forms 3.0 (X version) executable with user
  15. #              exit code linked in.
  16. #
  17. # References: 
  18. #   1) "ORACLE Installation and User's Guide"
  19. #   2) "SQL*Forms 3.0 Designer's Reference Manual"
  20. #
  21. #
  22. # Required files for User Exit example:
  23. #
  24. #   iapxit.c   - sample user exit source module 1  (C program)
  25. #           - Old method, no longer supported.
  26. #
  27. #   iaxpcc.pc  - sample user exit source module 2  (Pro*C program)
  28. #              - Uses "EXEC IAF GET..." to read data from a SQL*Forms field.
  29. #              - This is the recommended method.
  30. #
  31. #   iapxtb.c   - sample user exit entry point table
  32. #
  33. #
  34. # General Procedure for adding user exits.
  35. #   a) Add the user exit functions to the file "iaxpcc.pc" and/or "iapxit.c".
  36. #   b) Insert the user exit routine names into the database by using genxtb.
  37. #   c) Generate a new iapxtb.c using "genxtb". 
  38. #   d) Rebuild the SQL*Forms executable adding an "x" to its name to denote
  39. #      the inclusion of user exits: 
  40. #
  41. #        $ make -f sqlforms30.mk sqlforms30x
  42. #
  43. #  This command makes the new executable and causes it to be linked to 
  44. #  "design30x", and "runform30x".  Invoking the executable as "runform30x" will
  45. #  simply run a form (like the RUNFORM command in the "SQL*Forms Operator's
  46. #  Guide").  Invoking the executable as "sqlforms30x", or "design30x" will 
  47. #  allow the design of forms (like the SQLFORMS command in the SQL*Forms
  48. #  Designer's Tutorial) but will allow the use of user exits when the form
  49. #  is run using the "RUN" option.
  50. #
  51. # To use "genxtb":
  52. #   a) Run "genxtb" to create IAPXTB table [first time only]:          
  53. #        $ genxtb username/password
  54. #   b) Generate and Run the application "genxtb" to add exits to IAPXTB table
  55. #      in the database:
  56. #        $ generate30 -to genxtb       
  57. #        $ runform genxtb       
  58. #   c) Run "genxtb" to create "iapxtb.c" with current exits:
  59. #        $ genxtb username/password iapxtb.c
  60. #
  61.  
  62. .SUFFIXES: .o .c .pc
  63.  
  64. FRMLIBC=libforms30c.a libforms30.a
  65. FRMLIBX=libforms30x.a libforms30.a
  66.  
  67. IAD30MAINC=iaddrvc.o
  68. IAP30MAINC=iapdrvc.o
  69. IAD30MAINX=iaddrvx.o
  70. IAP30MAINX=iapdrvx.o
  71. IFMDMF=ifmdmf.o
  72.  
  73. LIBOKTC=$(ORACLE_HOME)/orakit/lib/liboktc.a \
  74.        $(ORACLE_HOME)/orakit/lib/libokt.a
  75. LIBOKTX=$(ORACLE_HOME)/orakit/lib/liboktx.a \
  76.        $(ORACLE_HOME)/orakit/lib/libokt.a
  77.  
  78. MENULIBS=$(ORACLE_HOME)/menu5/lib/libmenu5.a
  79.  
  80. # For linking with PL/SQL the following 5 macros are used.
  81. PSFSPR=psfspr.o psfsr2.o
  82. SCMSTR=$(ORACLE_HOME)/plsql/lib/scmstr.o
  83. IFPLUT=ifplut.o
  84. NFPDMY=
  85. NMPDMY=
  86. # For linking without PL/SQL the following 5 macros are used.
  87. # PSFSPR=
  88. # SCMSTR=
  89. # IFPLUT=
  90. # NFPDMY=nfpdmy.o nfppsd.o
  91. # NMPDMY=$(ORACLE_HOME)/menu5/lib/nmpdmy.o \
  92.     $(ORACLE_HOME)/menu5/lib/nmprun.o
  93.  
  94. NFPDMY2=nfpdmy.o nfppsd.o
  95. NMPDMY2=$(ORACLE_HOME)/menu5/lib/nmpdmy.o \
  96.     $(ORACLE_HOME)/menu5/lib/nmprun.o
  97.  
  98. PROLIBS=$(ORACLE_HOME)/rdbms/lib/libocic.a \
  99.     $(ORACLE_HOME)/rdbms/lib/libsql.a
  100. NETLIBS=$(ORACLE_HOME)/rdbms/lib/osntab.o \
  101.     $(ORACLE_HOME)/rdbms/lib/libsqlnet.a 
  102. STLIBS=$(ORACLE_HOME)/rdbms/lib/osntabst.o \
  103.        $(ORACLE_HOME)/rdbms/lib/config.o
  104.  
  105. LIBPLS=$(ORACLE_HOME)/rdbms/lib/libpls.a
  106.  
  107. LIBPLUS=$(ORACLE_HOME)/sqlplus/lib/libplus.a
  108.  
  109. ORALIBS=$(ORACLE_HOME)/rdbms/lib/libora.a 
  110.  
  111. LIBKNL=$(ORACLE_HOME)/rdbms/lib/libknl.a
  112.  
  113. OTHERLIBS=`cat $(ORACLE_HOME)/rdbms/lib/sysliblist`
  114. CLIBS= $(OTHERLIBS)
  115. ECHO=$(ORACLE_HOME)/bin/echodo
  116.  
  117. CLIBS= -lld $(OTHERLIBS)
  118.  
  119. PCC=$(ORACLE_HOME)/bin/pcc
  120. PCCINC=$(ORACLE_HOME)/c/lib
  121. PCCFLAGS=include=$(PCCINC) ireclen=132 oreclen=132 sqlcheck=none
  122.  
  123. CC=cc
  124.  
  125. CFLAGS=-I. -O
  126.  
  127. IAPXIT=iapxit.o iaxpcc.o iapxtb.o 
  128.  
  129. install: clean setup link
  130. insmenu: clean setupmenu link
  131. xinstall: xclean xsetup xlink
  132. xinsmenu: xclean xsetupmenu xlink
  133.  
  134. setup: sqlforms30 runform30 move
  135. setupmenu: sqlforms30menu runform30menu move
  136. xsetup: xsqlforms30 xrunform30 xmove
  137. xsetupmenu: xsqlforms30menu xrunform30menu xmove
  138.  
  139. clean:
  140.     -rm -f sqlforms30 runform30
  141. xclean:
  142.     -rm -f xsqlforms30 xrunform30
  143.  
  144. sqlforms30: 
  145.     @$(ECHO) $(CC) $(LDFLAGS) -o $@ $(IAD30MAINC) $(IFMDMF) $(IFPLUT) \
  146.     $(NFPDMY) $(FRMLIBC) $(LIBOKTC) $(PROLIBS) $(LIBPLS) $(FRMLIBC) \
  147.     $(NETLIBS) $(ORALIBS) $(CLIBS)
  148.  
  149. runform30:
  150.     @$(ECHO) $(CC) $(LDFLAGS) -o $@ $(IAP30MAINC) $(IFMDMF) $(IFPLUT) \
  151.     $(NFPDMY) $(PSFSPR) $(FRMLIBC) $(LIBOKTC) $(PROLIBS) $(SCMSTR) \
  152.     $(LIBPLS) $(FRMLIBC) $(NETLIBS) $(ORALIBS) $(CLIBS)
  153.  
  154. sqlforms30menu: 
  155.     @$(ECHO) $(CC) $(LDFLAGS) -o sqlforms30 $(IAD30MAINC) $(NFPDMY) \
  156.     $(FRMLIBC) $(LIBOKTC) $(LIBPLS) $(NMPDMY) $(MENULIBS) $(PROLIBS) \
  157.     $(NFPDMY) $(FRMLIBC) $(LIBPLUS) $(LIBPLS) $(NETLIBS) $(ORALIBS) \
  158.     $(CLIBS)
  159.  
  160. runform30menu:
  161.     @$(ECHO) $(CC) $(LDFLAGS) -o runform30 $(IAP30MAINC) $(NFPDMY) \
  162.     $(PSFSPR) $(FRMLIBC) $(LIBOKTC) $(SCMSTR) $(LIBPLS) $(NMPDMY) \
  163.     $(MENULIBS) $(NFPDMY) $(FRMLIBC) $(LIBPLS) $(LIBPLUS) $(PROLIBS) \
  164.     $(NETLIBS) $(ORALIBS) $(CLIBS)
  165.  
  166. xsqlforms30: 
  167.     @$(ECHO) $(CC) $(LDFLAGS) -o $@ $(IAD30MAINX) $(IFMDMF) $(IFPLUT) \
  168.     $(NFPDMY) $(FRMLIBX) $(LIBOKTX) $(PROLIBS) $(LIBPLS) $(FRMLIBX) \
  169.     $(NETLIBS) $(ORALIBS) $(CLIBS) $(XLIBS)
  170.  
  171. xrunform30:
  172.     @$(ECHO) $(CC) $(LDFLAGS) -o $@ $(IAP30MAINX) $(IFMDMF) $(IFPLUT) \
  173.     $(NFPDMY) $(PSFSPR) $(FRMLIBX) $(LIBOKTX) $(PROLIBS) $(SCMSTR) \
  174.     $(LIBPLS) $(FRMLIBX) $(NETLIBS) $(ORALIBS) $(CLIBS) $(XLIBS)
  175.  
  176. # X SQL*Menu50 not available yet.
  177. xsqlforms30menu:
  178. xrunform30menu:
  179.  
  180. move:
  181.     rm -f $(ORACLE_HOME)/bin/sqlforms30
  182.     rm -f $(ORACLE_HOME)/bin/design30 $(ORACLE_HOME)/bin/iad30
  183.     rm -f $(ORACLE_HOME)/bin/runform30 $(ORACLE_HOME)/bin/iap30
  184.     rm -f $(ORACLE_HOME)/bin/generate30 $(ORACLE_HOME)/bin/iag30
  185.     rm -f $(ORACLE_HOME)/bin/convert30 $(ORACLE_HOME)/bin/iac30
  186.     mv sqlforms30 $(ORACLE_HOME)/bin
  187.     mv runform30 $(ORACLE_HOME)/bin
  188.     -chmod 751 $(ORACLE_HOME)/bin/sqlforms30
  189.     -chmod 751 $(ORACLE_HOME)/bin/runform30
  190.  
  191. xmove:
  192.     rm -f $(ORACLE_HOME)/bin/xsqlforms30
  193.     rm -f $(ORACLE_HOME)/bin/xdesign30 $(ORACLE_HOME)/bin/xiad30
  194.     rm -f $(ORACLE_HOME)/bin/xrunform30 $(ORACLE_HOME)/bin/xiap30
  195.     mv xsqlforms30 $(ORACLE_HOME)/bin
  196.     mv xrunform30 $(ORACLE_HOME)/bin
  197.     -chmod 751 $(ORACLE_HOME)/bin/xsqlforms30
  198.     -chmod 751 $(ORACLE_HOME)/bin/xrunform30
  199.  
  200. link:
  201.     rm -f $(ORACLE_HOME)/bin/design30 $(ORACLE_HOME)/bin/iad30
  202.     rm -f $(ORACLE_HOME)/bin/iap30
  203.     rm -f $(ORACLE_HOME)/bin/generate30 $(ORACLE_HOME)/bin/iag30
  204.     rm -f $(ORACLE_HOME)/bin/convert30 $(ORACLE_HOME)/bin/iac30
  205.     ln $(ORACLE_HOME)/bin/sqlforms30 $(ORACLE_HOME)/bin/design30
  206.     ln $(ORACLE_HOME)/bin/sqlforms30 $(ORACLE_HOME)/bin/iad30
  207.     ln $(ORACLE_HOME)/bin/sqlforms30 $(ORACLE_HOME)/bin/generate30
  208.     ln $(ORACLE_HOME)/bin/sqlforms30 $(ORACLE_HOME)/bin/iag30
  209.     ln $(ORACLE_HOME)/bin/sqlforms30 $(ORACLE_HOME)/bin/convert30
  210.     ln $(ORACLE_HOME)/bin/sqlforms30 $(ORACLE_HOME)/bin/iac30
  211.     ln $(ORACLE_HOME)/bin/runform30 $(ORACLE_HOME)/bin/iap30
  212.  
  213. xlink:
  214.     rm -f $(ORACLE_HOME)/bin/xdesign30 $(ORACLE_HOME)/bin/xiad30
  215.     rm -f $(ORACLE_HOME)/bin/xiap30
  216.     ln $(ORACLE_HOME)/bin/xsqlforms30 $(ORACLE_HOME)/bin/xdesign30
  217.     ln $(ORACLE_HOME)/bin/xsqlforms30 $(ORACLE_HOME)/bin/xiad30
  218.     ln $(ORACLE_HOME)/bin/xrunform30 $(ORACLE_HOME)/bin/xiap30
  219.  
  220. setperms: 
  221.     -chmod 755 $(ORACLE_HOME)/bin/f30demobld
  222.     -chmod 755 $(ORACLE_HOME)/bin/f30demodrop
  223.     -chmod 751 $(ORACLE_HOME)/bin/crscript
  224.     -chmod 751 $(ORACLE_HOME)/bin/genxtb
  225.  
  226. sqlforms30st:
  227.     @$(ECHO) $(CC) $(LDFLAGS) -o $@ $(IAD30MAINC) $(IFMDMF) $(IFPLUT) \
  228.     $(NFPDMY) $(FRMLIBC) $(LIBOKTC) $(PROLIBS) $(LIBPLS) $(FRMLIBC) \
  229.     $(STLIBS) $(ORALIBS) $(LIBKNL) $(ORALIBS) $(CLIBS)
  230.  
  231. runform30st:
  232.     @$(ECHO) $(CC) $(LDFLAGS) -o $@ $(IAP30MAINC) $(IFMDMF) $(IFPLUT) \
  233.     $(NFPDMY) $(PSFSPR) $(FRMLIBC) $(LIBOKTC) $(PROLIBS) $(SCMSTR) \
  234.     $(LIBPLS) $(FRMLIBC) $(STLIBS) $(ORALIBS) $(LIBKNL) $(ORALIBS) $(CLIBS)
  235.  
  236. singletask: sqlforms30st runform30st
  237.     rm -f $(ORACLE_HOME)/bin/sqlforms30st $(ORACLE_HOME)/bin/runform30st
  238.     mv sqlforms30st $(ORACLE_HOME)/bin/sqlforms30st
  239.     mv runform30st $(ORACLE_HOME)/bin/runform30st
  240.     -chmod 755 $(ORACLE_HOME)/bin/sqlforms30st
  241.     -chmod 755 $(ORACLE_HOME)/bin/runform30st
  242.  
  243. archive:
  244.  
  245. runform30x iap30x: $(IAPXIT)
  246.     @$(ECHO) $(CC) $(LDFLAGS) -o runform30x $(IAPXIT) $(IAP30MAINC) \
  247.     $(IFMDMF) $(IFPLUT) $(NFPDMY) $(PSFSPR) $(FRMLIBC) $(LIBOKTC) \
  248.     $(PROLIBS) $(SCMSTR) $(LIBPLS) $(FRMLIBC) $(NETLIBS) $(ORALIBS) \
  249.     $(CLIBS)
  250.     rm -f iap30x
  251.     ln runform30x iap30x
  252.  
  253. runform30xmenu iap30xmenu: $(IAPXIT)
  254.     @$(ECHO) $(CC) $(LDFLAGS) -o runform30x $(IAPXIT) $(IAP30MAINC) \
  255.     $(PSFSPR) $(NFPDMY) $(FRMLIBC) $(LIBOKTC) $(SCMSTR) $(LIBPLS) \
  256.     $(NMPDMY) $(MENULIBS) $(NFPDMY) $(FRMLIBC) $(LIBPLS) $(LIBPLUS) \
  257.     $(PROLIBS) $(NETLIBS) $(ORALIBS) $(CLIBS)
  258.     rm -f iap30x
  259.     ln runform30x iap30x
  260.  
  261. xrunform30x xiap30x: $(IAPXIT)
  262.     @$(ECHO) $(CC) $(LDFLAGS) -o xrunform30x $(IAPXIT) $(IAP30MAINX) \
  263.     $(IFMDMF) $(IFPLUT) $(NFPDMY) $(PSFSPR) $(FRMLIBX) $(LIBOKTX) \
  264.     $(PROLIBS) $(SCMSTR) $(LIBPLS) $(FRMLIBX) $(NETLIBS) $(ORALIBS) \
  265.     $(CLIBS) $(XLIBS)
  266.     rm -f xiap30x
  267.     ln xrunform30x xiap30x
  268.  
  269. # X SQL*Menu50 not available yet.
  270. xrunform30xmenu xiap30xmenu: $(IAPXIT)
  271.  
  272. iapxtb.o: iapxtb.c usrxit.h 
  273.     $(CC) -c $(CFLAGS) iapxtb.c
  274.  
  275. iaxpcc.o: iaxpcc.pc usrxit.h 
  276.     $(PCC) $(PCCFLAGS) iname=iaxpcc.pc
  277.     $(CC) -c $(CFLAGS) iaxpcc.c
  278.  
  279. iapxit.o: iapxit.c usrxit.h
  280.     $(CC) -c $(CFLAGS) iapxit.c
  281.  
  282. .pc.o:
  283.     $(PCC) $(PCCFLAGS) iname=$*.pc
  284.     $(CC) -c $(CFLAGS) $*.c
  285.