emx.mk 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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: Rules makefile definitions, which define the rules used to
  25. # build targets. We include them here at the end of the
  26. # makefile so the generic project makefiles can override
  27. # certain things with macros (such as linking C++ programs
  28. # differently).
  29. #
  30. # OS/2 version for EMX/GNU C/C++.
  31. #
  32. #############################################################################
  33. # Take out PMLIB if we don't need to link with it
  34. .IF $(NO_PMLIB)
  35. PMLIB :=
  36. .ENDIF
  37. # Implicit generation rules for making object files
  38. %$O: %.c ;
  39. .IF $(SHOW_ARGS)
  40. $(CC) -c $(CFLAGS) $(<:s,\,/)
  41. .ELSE
  42. @echo $(CC) -c $(<:s,\,/)
  43. @$(CC) -c $(CFLAGS) $(<:s,\,/)
  44. .ENDIF
  45. %$O: %$P ;
  46. .IF $(SHOW_ARGS)
  47. $(CXX) -c $(CFLAGS) $(<:s,\,/)
  48. .ELSE
  49. @echo $(CXX) -c $(<:s,\,/)
  50. @$(CXX) -c $(CFLAGS) $(<:s,\,/)
  51. .ENDIF
  52. %$O: %$A ;
  53. .IF $(USE_NASM)
  54. .IF $(SHOW_ARGS)
  55. $(AS) -o $@ $(ASFLAGS) $(<:s,\,/)
  56. .ELSE
  57. @echo $(AS) $(<:s,\,/)
  58. @$(AS) @$(mktmp -o $@ $(ASFLAGS)) $(<:s,\,/)
  59. .ENDIF
  60. .ELSE
  61. .IF $(SHOW_ARGS)
  62. $(AS) @$(mktmp $(ASFLAGS:s/\/\\)) $(<:s,/,\)
  63. .ELSE
  64. @echo $(AS) $(<:s,/,\)
  65. $(AS) @$(mktmp $(ASFLAGS:s/\/\\)) $(<:s,/,\)
  66. .ENDIF
  67. .ENDIF
  68. # Implicit rule for building a library file using response file
  69. %$L: ;
  70. .IF $(SHOW_ARGS)
  71. $(LIB) $(LIBFLAGS) $@ $(&:s,\,/)
  72. .ELSE
  73. @echo $(LIB) $@
  74. @$(LIB) $(LIBFLAGS) $@ @$(mktmp $(?:t"\n"))
  75. .ENDIF
  76. # Implicit rule for building an executable file using response file
  77. %$E: ;
  78. .IF $(SHOW_ARGS)
  79. $(LD) $(LDFLAGS) -o $@ $(&:s,\,/) $(EXELIBS) $(PMLIB) -lgpp -lstdcpp
  80. .ELSE
  81. @echo $(LD) $@
  82. @$(LD) $(LDFLAGS) -o $@ $(&:s,\,/) $(EXELIBS) $(PMLIB) -lgpp -lstdcpp
  83. .ENDIF