va32.mk 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. #############################################################################
  2. #
  3. # SciTech Multi-platform Graphics Library
  4. #
  5. # ========================================================================
  6. #
  7. # The contents of this file are subject to the SciTech MGL Public
  8. # License Version 1.0 (the "License"); you may not use this file
  9. # except in compliance with the License. You may obtain a copy of
  10. # the License at http://www.scitechsoft.com/mgl-license.txt
  11. #
  12. # Software distributed under the License is distributed on an
  13. # "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  14. # implied. See the License for the specific language governing
  15. # rights and limitations under the License.
  16. #
  17. # The Original Code is Copyright (C) 1991-1998 SciTech Software, Inc.
  18. #
  19. # The Initial Developer of the Original Code is SciTech Software, Inc.
  20. # All Rights Reserved.
  21. #
  22. # ========================================================================
  23. #
  24. # Descripton: Generic DMAKE startup makefile definitions file. Assumes
  25. # that the SCITECH environment variable has been set to point
  26. # to where all our stuff is installed. You should not need
  27. # to change anything in this file.
  28. #
  29. # IBM VisualAge C++ 3.0 OS/2 32-bit version.
  30. #
  31. #############################################################################
  32. # Include standard startup script definitions
  33. .IMPORT: SCITECH
  34. .INCLUDE: "$(SCITECH)\makedefs\startup.mk"
  35. # Import enivornment variables that we use
  36. .IMPORT .IGNORE : VA_LIBBASE USE_OS232 USE_OS2GUI FULLSCREEN NOOPT MAX_WARN
  37. # We are compiling for a 32 bit envionment
  38. _32BIT_ := 1
  39. # Default commands for compiling, assembling linking and archiving
  40. CC := icc
  41. CPP := icc
  42. CFLAGS := /Q /G5 /Gl+ /Fi /Si /J- /Ss+ /Sp1 /Gm+ /I.
  43. .IF $(USE_NASM)
  44. AS := nasm
  45. ASFLAGS := -t -f obj -F null -d__FLAT__ -dSTDCALL_MANGLE -d__NOU_VAR__ -iINCLUDE -i$(SCITECH)\INCLUDE
  46. .ELSE
  47. .IF $(USE_TASM32)
  48. AS := tasm32
  49. .ELIF $(USE_TASMX)
  50. AS := tasmx
  51. .ELSE
  52. AS := tasm
  53. .ENDIF
  54. ASFLAGS := /t /mx /m /D__FLAT__ /DSTDCALL_MANGLE /D__NOU_VAR__ /iINCLUDE /i$(SCITECH)\INCLUDE
  55. .ENDIF
  56. LD := ilink
  57. LDFLAGS = /noi /exepack:2 /packcode /packdata /align:32 /map /noe
  58. RC := rc
  59. RCFLAGS := -n -x2
  60. LIB := ilib
  61. LIBFLAGS := /nologo
  62. ILIB := implib
  63. ILIBFLAGS := /nologo
  64. IPFC := ipfc
  65. IPFCFLAGS :=
  66. IBMCOBJ := 1
  67. # Set the compiler warning level
  68. .IF $(MAX_WARN)
  69. CFLAGS += /W3
  70. .ELSE
  71. CFLAGS += /W1
  72. .ENDIF
  73. # Optionally turn on debugging information
  74. .IF $(DBG)
  75. CFLAGS += /Ti
  76. LDFLAGS += /DE
  77. .ELSE
  78. .IF $(USE_TASM)
  79. ASFLAGS += /q
  80. .ENDIF
  81. .END
  82. # Optionally turn on optimisations
  83. .IF $(OPT)
  84. CFLAGS += /Gfi /O /Oi
  85. .ELIF $(OPT_SIZE)
  86. CFLAGS += /Gfi /O /Oc
  87. .ELIF $(NOOPT)
  88. CFLAGS += /O-
  89. .END
  90. # Optionally turn on direct i387 FPU instructions optimised for Pentium
  91. .IF $(FPU)
  92. CFLAGS += -DFPU387
  93. ASFLAGS += -dFPU387
  94. .END
  95. # Optionally compile a beta release version of a product
  96. .IF $(BETA)
  97. CFLAGS += -DBETA
  98. ASFLAGS += -dBETA
  99. .END
  100. # Build 32-bit OS/2 apps
  101. .IF $(BUILD_DLL)
  102. CFLAGS += /Ge- /DBUILD_DLL
  103. LDFLAGS += /DLL /NOE
  104. ASFLAGS += -dBUILD_DLL
  105. .ELSE
  106. .IF $(USE_OS2GUI)
  107. CFLAGS += -D__OS2_PM__
  108. LDFLAGS += /PMTYPE:PM
  109. .ELSE
  110. .IF $(FULLSCREEN)
  111. LDFLAGS += /PMTYPE:NOVIO
  112. .ELSE
  113. LDFLAGS += /PMTYPE:VIO
  114. .ENDIF
  115. .ENDIF
  116. .ENDIF
  117. DX_ASFLAGS += -d__OS2__
  118. LIB_OS = os232
  119. # Place to look for PMODE library files
  120. .IF $(USE_OS2GUI)
  121. .IF $(USE_SDDPMDLL)
  122. #Note: This is OK for now but might need to be changed if the GUI PM library
  123. # were really different
  124. PMLIB := sddpmlib.lib
  125. .ELSE
  126. PMLIB := pm_pm.lib
  127. .ENDIF
  128. .ELSE
  129. .IF $(USE_SDDPMDLL)
  130. PMLIB := sddpmlib.lib
  131. .ELSE
  132. PMLIB := pm.lib
  133. .ENDIF
  134. .ENDIF
  135. # Define the base directory for library files
  136. .IF $(CHECKED)
  137. LIB_BASE_DIR := $(SCITECH_LIB)\lib\debug
  138. CFLAGS += /DCHECKED=1
  139. .ELSE
  140. LIB_BASE_DIR := $(SCITECH_LIB)\lib\release
  141. .ENDIF
  142. # Define where to install library files
  143. LIB_BASE := $(LIB_BASE_DIR)\$(LIB_OS)\$(VA_LIBBASE)
  144. LIB_DEST := $(LIB_BASE)
  145. # Define which file contains our rules
  146. RULES_MAK := va32.mk