makefile 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. #
  2. # Copyright (c) 2012-2014 Daniele Bartolini and individual contributors.
  3. # License: https://github.com/taylor001/crown/blob/master/LICENSE
  4. #
  5. UNAME := $(shell uname)
  6. ifeq ($(UNAME), $(filter $(UNAME), Linux))
  7. OS=linux
  8. else
  9. OS=windows
  10. endif
  11. PREMAKE=bin/$(OS)/premake4
  12. luajit-linux32:
  13. make -R -C third/luajit CC="gcc -m32" BUILDMODE="static"
  14. luajit-linux64:
  15. make -R -C third/luajit CC="gcc -m64" BUILDMODE="static"
  16. luajit-windows32:
  17. cd third/luajit/src && msvcbuild
  18. luajit-windows64:
  19. cd third/luajit/src && msvcbuild
  20. luajit-arm:
  21. make -R -C third/luajit HOST_CC="gcc -m32" \
  22. CROSS=$(ANDROID_NDK_ARM)/bin/arm-linux-androideabi- \
  23. TARGET_FLAGS="--sysroot $(ANDROID_NDK_ROOT)/platforms/android-14/arch-arm \
  24. -march=armv7-a -mfloat-abi=softfp -Wl,--fix-cortex-a8"
  25. luajit-clean:
  26. make -R -C third/luajit clean
  27. bgfx-linux-debug32:
  28. make -R -C third/bgfx linux-debug32
  29. bgfx-linux-debug64:
  30. make -R -C third/bgfx linux-debug64
  31. bgfx-linux-release32:
  32. make -R -C third/bgfx linux-release32
  33. bgfx-linux-release64:
  34. make -R -C third/bgfx linux-release64
  35. bgfx-vs2012-debug32:
  36. make -R -C third/bgfx && make -R -C third/bgfx .build/projects/vs2012
  37. bgfx-vs2012-release32:
  38. make -R -C third/bgfx && make -R -C third/bgfx .build/projects/vs2012
  39. bgfx-vs2012-debug64:
  40. make -R -C third/bgfx && make -R -C third/bgfx .build/projects/vs2012
  41. bgfx-vs2012-release64:
  42. make -R -C third/bgfx && make -R -C third/bgfx .build/projects/vs2012
  43. bgfx-android-arm-debug:
  44. make -R -C third/bgfx android-arm-debug
  45. bgfx-android-arm-release:
  46. make -R -C third/bgfx android-arm-release
  47. bgfx-clean:
  48. make -R -C third/bgfx clean
  49. deps-linux-debug32: luajit-linux32 bgfx-linux-debug32
  50. deps-linux-debug64: luajit-linux64 bgfx-linux-debug64
  51. deps-linux-release32: luajit-linux32 bgfx-linux-release32
  52. deps-linux-release64: luajit-linux64 bgfx-linux-release64
  53. deps-windows-debug32: luajit-windows32 bgfx-vs2012-debug32
  54. deps-windows-debug64: luajit-windows64 bgfx-vs2012-debug64
  55. deps-windows-release32: luajit-windows32 bgfx-vs2012-release32
  56. deps-windows-release64: luajit-windows64 bgfx-vs2012-release64
  57. deps-android-arm-debug: luajit-arm bgfx-android-arm-debug
  58. deps-android-arm-release: luajit-arm bgfx-android-arm-release
  59. deps-clean: luajit-clean bgfx-clean
  60. linux-build:
  61. $(PREMAKE) --file=premake/premake4.lua --compiler=linux-gcc gmake
  62. linux-debug32: deps-linux-debug32 linux-build
  63. make -R -C .build/projects/linux config=debug32
  64. linux-development32: deps-linux-debug32 linux-build
  65. make -R -C .build/projects/linux config=development32
  66. linux-release32: deps-linux-release32 linux-build
  67. make -R -C .build/projects/linux config=release32
  68. linux-debug64: deps-linux-debug64 linux-build
  69. make -R -C .build/projects/linux config=debug64
  70. linux-development64: deps-linux-debug64 linux-build
  71. make -R -C .build/projects/linux config=development64
  72. linux-release64: deps-linux-release64 linux-build
  73. make -R -C .build/projects/linux config=release64
  74. linux: linux-debug32 linux-development32 linux-release32 linux-debug64 linux-development64 linux-release64
  75. android-build:
  76. $(PREMAKE) --file=premake/premake4.lua --compiler=android-arm gmake
  77. android-arm-debug: deps-android-arm-debug android-build
  78. make -R -C .build/projects/android config=debug
  79. android-arm-development: deps-android-arm-debug android-build
  80. make -R -C .build/projects/android config=development
  81. android-arm-release: deps-android-arm-release android-build
  82. make -R -C .build/projects/android config=release
  83. android-arm: android-arm-debug android-arm-development android-arm-release
  84. windows-build:
  85. $(PREMAKE) --file=premake\premake4.lua vs2012
  86. windows-debug32: deps-windows-debug32 windows-build
  87. devenv .build/windows/crown.sln /Build "debug|x32"
  88. windows-development32: deps-windows-debug32 windows-build
  89. devenv .build/windows/crown.sln /Build "development|x32"
  90. windows-release32: deps-windows-release32 windows-build
  91. devenv .build/windows/crown.sln /Build "release|x32"
  92. windows-debug64: deps-windows-debug64 windows-build
  93. devenv .build/windows/crown.sln /Build "debug|x64"
  94. windows-development64: deps-windows-debug64 windows-build
  95. devenv .build/windows/crown.sln /Build "development|x64"
  96. windows-release64: deps-windows-release64 windows-build
  97. devenv .build/windows/crown.sln /Build "release|x64"
  98. .PHONY: docs
  99. docs:
  100. doxygen docs/Doxyfile.doxygen
  101. rst2html2 --stylesheet=html4css1.css,docs/style.css docs/lua_api.txt .build/docs/lua_api.html
  102. clean: deps-clean
  103. @echo Cleaning...
  104. @rm -rf .build