makefile 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. UNAME := $(shell uname)
  2. ifeq ($(UNAME), $(filter $(UNAME), Linux))
  3. OS=linux
  4. else
  5. OS=windows
  6. endif
  7. PREMAKE=bin/$(OS)/premake4
  8. luajit-linux32:
  9. make -R -C third/luajit CC="gcc -m32" BUILDMODE="static"
  10. luajit-linux64:
  11. make -R -C third/luajit CC="gcc -m64" BUILDMODE="static"
  12. luajit-windows32:
  13. cd third/luajit/src && msvcbuild
  14. luajit-windows64:
  15. cd third/luajit/src && msvcbuild
  16. luajit-arm:
  17. make -R -C third/luajit HOST_CC="gcc -m32" \
  18. CROSS=$(ANDROID_NDK_ARM)/bin/arm-linux-androideabi- \
  19. TARGET_FLAGS="--sysroot $(ANDROID_NDK_ROOT)/platforms/android-14/arch-arm \
  20. -march=armv7-a -mfloat-abi=softfp -Wl,--fix-cortex-a8"
  21. luajit-clean:
  22. make -R -C third/luajit clean
  23. linux-build:
  24. $(PREMAKE) --file=premake/premake4.lua --compiler=linux-gcc gmake
  25. linux-debug32: luajit-linux32 linux-build
  26. make -R -C .build/linux config=debug32
  27. linux-development32: luajit-linux32 linux-build
  28. make -R -C .build/linux config=development32
  29. linux-release32: luajit-linux32 linux-build
  30. make -R -C .build/linux config=release32
  31. linux-debug64: luajit-linux64 linux-build
  32. make -R -C .build/linux config=debug64
  33. linux-development64: luajit-linux64 linux-build
  34. make -R -C .build/linux config=development64
  35. linux-release64: luajit-linux64 linux-build
  36. make -R -C .build/linux config=release64
  37. linux: linux-debug32 linux-development32 linux-release32 linux-debug64 linux-development64 linux-release64
  38. android-build:
  39. $(PREMAKE) --file=premake/premake4.lua --compiler=android gmake
  40. android-debug: luajit-arm android-build
  41. make -R -C .build/android config=debug
  42. android-development: luajit-arm android-build
  43. make -R -C .build/android config=development
  44. android-release: luajit-arm android-build
  45. make -R -C .build/android config=release
  46. android: android-debug android-development android-release
  47. windows-build:
  48. $(PREMAKE) --file=premake\premake4.lua vs2008
  49. windows-debug32: windows-build
  50. devenv .build/windows/crown.sln /Build "debug|x32"
  51. windows-development32: windows-build
  52. devenv .build/windows/crown.sln /Build "development|x32"
  53. windows-release32: windows-build
  54. devenv .build/windows/crown.sln /Build "release|x32"
  55. windows-debug64: windows-build
  56. devenv .build/windows/crown.sln /Build "debug|x64"
  57. windows-development64: windows-build
  58. devenv .build/windows/crown.sln /Build "development|x64"
  59. windows-release64: windows-build
  60. devenv .build/windows/crown.sln /Build "release|x64"
  61. docs:
  62. doxygen Doxyfile.doxygen
  63. clean: luajit-clean
  64. @echo Cleaning...
  65. @rm -rf .build
  66. @rm -rf .installation
  67. starter:
  68. xbuild /p:OutputPath=$(CROWN_INSTALL_DIR)/tools tools/gui/starter/starter.sln
  69. console:
  70. xbuild /p:OutputPath=$(CROWN_INSTALL_DIR)/tools tools/gui/console/console.sln
  71. tools: starter console