PageRenderTime 25ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/dae2ma/Makefile

https://bitbucket.org/ZhangJingGuo/opencollada
Makefile | 121 lines | 76 code | 20 blank | 25 comment | 4 complexity | 34d55be2fca28bc255cad0aff1a31cc9 MD5 | raw file
  1. ###############################################################################
  2. # Copyright (c) 2008 NetAllied Systems GmbH
  3. #
  4. # This file is part of COLLADAMaya.
  5. #
  6. # Portions of the code are:
  7. # Copyright (c) 2005-2007 Feeling Software Inc.
  8. # Copyright (c) 2005-2007 Sony Computer Entertainment America
  9. # Copyright (c) 2004-2005 Alias Systems Corp.
  10. #
  11. # Licensed under the MIT Open Source License,
  12. # for details please see LICENSE file or the website
  13. # http://www.opensource.org/licenses/mit-license.php
  14. ###############################################################################
  15. # NOTE: this include is specific to a maya version
  16. # when you want to build this plugin for maya 2008 and 2009
  17. # you have to reset MAYA_LOCATION
  18. include $(MAYA_LOCATION)/devkit/plug-ins/buildconfig
  19. # override compiler if gcc 4.1.2 is installed as default
  20. #CC = gcc
  21. #C++ = g++
  22. # define variables
  23. ARCH = `uname -i`
  24. OS = linux
  25. OUTFILE = COLLADAMaya
  26. OBJ_DIR_OPENCOLLADA = obj/$(OS)_$(ARCH)_openCOLLADA
  27. OBJ_DIR_2008 = obj/$(OS)_$(ARCH)_maya2008
  28. BIN_DIR_2008 = bin/$(OS)_$(ARCH)_maya2008
  29. OBJ_DIR_2009 = obj/$(OS)_$(ARCH)_maya2009
  30. BIN_DIR_2009 = bin/$(OS)_$(ARCH)_maya2009
  31. OPENCOLLADA_INCLUDES = -I../COLLADABaseUtils/include \
  32. -I../COLLADABaseUtils/include/Math \
  33. -I../COLLADAFramework/include \
  34. -I../GeneratedSaxParser/include \
  35. -I../COLLADASaxFrameworkLoader/include \
  36. -I../COLLADAStreamWriter/include \
  37. -I../Externals/UTF/include \
  38. -I$(HOME)/include/boost-1_38 \
  39. -I$(HOME)/include/libxml2
  40. OPENCOLLADA_SRC_DIRS = ../COLLADABaseUtils/src \
  41. ../COLLADABaseUtils/src/Math \
  42. ../COLLADAFramework/src \
  43. ../GeneratedSaxParser/src \
  44. ../COLLADASaxFrameworkLoader/src \
  45. ../COLLADAStreamWriter/src
  46. MAYA_PLUGIN_INCLUDES = $(OPENCOLLADA_INCLUDES) \
  47. -Iinclude \
  48. -I../Externals/MayaDataModel/include/ \
  49. -I$(MAYA_LOCATION)/devkit/include \
  50. -I$(MAYA_LOCATION)/devkit/plug-ins
  51. MAYA_PLUGIN_SRC_DIR = src
  52. MAYA_PLUGIN_LIBS = -L$(HOME)/lib \
  53. -lxml2 \
  54. -lboost_regex-gcc41-mt \
  55. -lboost_system-gcc41-mt \
  56. -lboost_filesystem-gcc41-mt
  57. printUsage:
  58. @echo use target maya2008 or maya2009
  59. @echo set MAYA_LOCATION accordingly
  60. mkdirs:
  61. mkdir -p $(OBJ_DIR_OPENCOLLADA)
  62. mkdir -p $(OBJ_DIR_2008)
  63. mkdir -p $(BIN_DIR_2008)
  64. mkdir -p $(OBJ_DIR_2009)
  65. mkdir -p $(BIN_DIR_2009)
  66. generateVersionHeader:
  67. sh generateVersionHeader.sh
  68. openCOLLADA: mkdirs
  69. # build UTF
  70. $(CC) -c $(CFLAGS) -I../Externals/UTF/include -o $(OBJ_DIR_OPENCOLLADA)/ConvertUTF.o ../Externals/UTF/src/ConvertUTF.c
  71. # build openCOLLADA
  72. for i in $(OPENCOLLADA_SRC_DIRS); do \
  73. for j in $$i/*.cpp; do \
  74. echo $$j; \
  75. $(C++) -c $(OPENCOLLADA_INCLUDES) $(C++FLAGS) -o $(OBJ_DIR_OPENCOLLADA)/`basename $$j .cpp`.o $$j; \
  76. done \
  77. done
  78. compileMaya2008:
  79. # use includes and flags from imported maya build config file
  80. for i in $(MAYA_PLUGIN_SRC_DIR)/*.cpp; do \
  81. echo $$i; \
  82. $(C++) -c $(INCLUDES) $(C++FLAGS) $(MAYA_PLUGIN_INCLUDES) -o $(OBJ_DIR_2008)/`basename $$i .cpp`.o $$i; \
  83. done
  84. linkMaya2008:
  85. $(LD) $(LIBS) $(MAYA_PLUGIN_LIBS) -o $(BIN_DIR_2008)/$(OUTFILE).$(EXT) $(OBJ_DIR_OPENCOLLADA)/*.o $(OBJ_DIR_2008)/*.o
  86. maya2008: openCOLLADA generateVersionHeader compileMaya2008 linkMaya2008
  87. compileMaya2009:
  88. # use includes and flags from imported maya build config file
  89. for i in $(MAYA_PLUGIN_SRC_DIR)/*.cpp; do \
  90. echo $$i; \
  91. $(C++) -c $(INCLUDES) $(C++FLAGS) $(MAYA_PLUGIN_INCLUDES) -o $(OBJ_DIR_2009)/`basename $$i .cpp`.o $$i; \
  92. done
  93. linkMaya2009:
  94. $(LD) $(LIBS) $(MAYA_PLUGIN_LIBS) -o $(BIN_DIR_2009)/$(OUTFILE).$(EXT) $(OBJ_DIR_OPENCOLLADA)/*.o $(OBJ_DIR_2009)/*.o
  95. maya2009: openCOLLADA generateVersionHeader compileMaya2009 linkMaya2009
  96. clean:
  97. rm -rf $(OBJ_DIR_OPENCOLLADA)
  98. rm -rf $(OBJ_DIR_2008)
  99. rm -rf $(BIN_DIR_2008)
  100. rm -rf $(OBJ_DIR_2009)
  101. rm -rf $(BIN_DIR_2009)