Makefile 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. # Makefile for building Mac OS X addon module build skeleton
  2. MODULE_TOPDIR = ../..
  3. include $(MODULE_TOPDIR)/include/Make/Other.make
  4. ifndef MACOSX_APP_NAME
  5. MACOSX_APP_NAME = GRASS-${GRASS_VERSION_MAJOR}.${GRASS_VERSION_MINOR}.app
  6. endif
  7. MACOSX_APPDIR = ${MACOSX_APP_NAME}/Contents/MacOS
  8. INST_DIR_MACOSX = ${prefix}/${MACOSX_APPDIR}
  9. default: modbuild
  10. modbuild: ReadMe.rtf
  11. mkdir -p $(ARCH_DISTDIR)/modbuild
  12. -cp -f License.rtf $(ARCH_DISTDIR)/modbuild/
  13. -cp -f ReadMe.rtf $(ARCH_DISTDIR)/modbuild/
  14. mkdir -p $(ARCH_DISTDIR)/modbuild/dist.$(ARCH)
  15. -cp -rf $(ARCH_DISTDIR)/demolocation $(ARCH_DISTDIR)/modbuild/dist.$(ARCH)/
  16. -sed -e 's,^GISDBASE.*,GISDBASE = /Library/GRASS/$(GRASS_VERSION_MAJOR).$(GRASS_VERSION_MINOR)/modbuild/dist.$(ARCH),g' $(ARCH_DISTDIR)/demolocation/.grassrc$(GRASS_VERSION_MAJOR)$(GRASS_VERSION_MINOR) > $(ARCH_DISTDIR)/modbuild/dist.$(ARCH)/demolocation/.grassrc$(GRASS_VERSION_MAJOR)$(GRASS_VERSION_MINOR)
  17. mkdir -p $(ARCH_DISTDIR)/modbuild/module
  18. mkdir -p $(ARCH_DISTDIR)/modbuild/include/Make
  19. -cp $(MODULE_TOPDIR)/include/Make/Dir.make $(ARCH_DISTDIR)/modbuild/include/Make/
  20. -cp $(MODULE_TOPDIR)/include/Make/Doxygen.make $(ARCH_DISTDIR)/modbuild/include/Make/
  21. @# need a little change in Grass.make
  22. -sed -E -e 's,@GRASS_LIB_PREFIX@,lib,g' \
  23. -e 's,@GRASS_LIB_SUFFIX@,.dylib,g' \
  24. -e 's,@GRASS_LIBRARY_TYPE@,shlib,g' \
  25. -e 's,@GRASS_VERSION_MAJOR@,$(GRASS_VERSION_MAJOR),g' \
  26. -e 's,@GRASS_VERSION_MINOR@,$(GRASS_VERSION_MINOR),g' \
  27. -e 's,@GRASS_VERSION_RELEASE@,$(GRASS_VERSION_RELEASE),g' \
  28. -e 's,@GRASS_VERSION_DATE@,$(GRASS_VERSION_DATE),g' \
  29. -e 's#^ARCH_INC[[:space:]].*#& -I$$(GISBASE)/include#g' \
  30. -e 's#^ARCH_LIBPATH.*#& -L$$(GISBASE)/lib#g' \
  31. -e 's#^GISBASE.*#GISBASE = $$(GRASS_APP)/Contents/MacOS#g' \
  32. $(MODULE_TOPDIR)/include/Make/Grass.make.in > $(ARCH_DISTDIR)/modbuild/include/Make/Grass.make
  33. @# until I figure out how to get sed to replace with multiple lines in a
  34. @# makefile, GRASS_APP required for modbuild, ie no default to /Applications
  35. @#-e 's#^GISBASE.*#ifdef GRASS_APP\
  36. @#GISBASE = $$(GRASS_APP)/Contents/MacOS\
  37. @#else\
  38. @#GISBASE = $(INST_DIR_MACOSX)\
  39. @#endif#g'
  40. @# html.make needs a little change
  41. sed -e 's,GISRC=$$(RUN_GISBASE),GISRC=/Library/GRASS/$(GRASS_VERSION_MAJOR).$(GRASS_VERSION_MINOR)/modbuild/dist.$$(ARCH),g' $(MODULE_TOPDIR)/include/Make/Html.make > $(ARCH_DISTDIR)/modbuild/include/Make/Html.make
  42. -cp $(MODULE_TOPDIR)/include/Make/Lib.make $(ARCH_DISTDIR)/modbuild/include/Make/
  43. sed -e 's,$$(DEPENDENCIES),,g' $(MODULE_TOPDIR)/include/Make/Module.make > $(ARCH_DISTDIR)/modbuild/include/Make/Module.make
  44. @# platform.make changes
  45. sed -e 's,^GRASS_HOME.*,GRASS_HOME = $$(GRASS_HOME),g' \
  46. -e 's,^RUN_GISBASE.*,RUN_GISBASE = $$(GISBASE),g' \
  47. $(MODULE_TOPDIR)/include/Make/Platform.make > $(ARCH_DISTDIR)/modbuild/include/Make/Platform.make
  48. -cp $(MODULE_TOPDIR)/include/Make/Rules.make $(ARCH_DISTDIR)/modbuild/include/Make/
  49. sed -e 's,GISRC=$$(RUN_GISBASE),GISRC=/Library/GRASS/$(GRASS_VERSION_MAJOR).$(GRASS_VERSION_MINOR)/modbuild/dist.$$(ARCH),g' $(MODULE_TOPDIR)/include/Make/Script.make > $(ARCH_DISTDIR)/modbuild/include/Make/Script.make
  50. -cp $(MODULE_TOPDIR)/include/Make/Shlib.make $(ARCH_DISTDIR)/modbuild/include/Make/
  51. -cp $(MODULE_TOPDIR)/include/Make/Stlib.make $(ARCH_DISTDIR)/modbuild/include/Make/
  52. mkdir -p $(ARCH_DISTDIR)/modbuild/tools/g.html2man
  53. -cp $(MODULE_TOPDIR)/tools/g.html2man/g.html2man $(ARCH_DISTDIR)/modbuild/tools/g.html2man/
  54. -cp $(MODULE_TOPDIR)/tools/mkhtml.sh $(ARCH_DISTDIR)/modbuild/tools/