2009-08-12 06:44:11 -07:00
|
|
|
VERSION_MAJOR = 1
|
2013-04-05 05:03:44 -07:00
|
|
|
VERSION_MINOR = 9
|
2012-11-20 10:31:33 -08:00
|
|
|
VERSION_RELEASE = 0
|
2013-04-05 05:03:44 -07:00
|
|
|
# Irrlicht Engine 1.9.0
|
2007-09-23 16:14:48 -07:00
|
|
|
# Makefile for Linux
|
2007-09-04 11:51:42 -07:00
|
|
|
#
|
2007-05-20 11:03:49 -07:00
|
|
|
# To use, just run:
|
|
|
|
#
|
|
|
|
# make
|
|
|
|
#
|
|
|
|
# This will compile Irrlicht, create a static lib (libIrrlicht.a), and copy it
|
|
|
|
# into the subdirectory lib/Linux. That's all.
|
|
|
|
#
|
|
|
|
# If you want Irrlicht to be compiled as shared lib (libIrrlicht.so.versionnumber), then run:
|
|
|
|
#
|
|
|
|
# make sharedlib
|
|
|
|
# make install
|
|
|
|
#
|
2011-07-29 07:57:59 -07:00
|
|
|
# If you want to compile in release mode run:
|
|
|
|
#
|
|
|
|
# make NDEBUG=1
|
|
|
|
#
|
2009-08-12 06:44:11 -07:00
|
|
|
# For cross-compilation for Win32 under Linux, just use the win32 targets. You have to set
|
|
|
|
# at least CXX, CC, and AR to the proper binaries.
|
2007-05-20 11:03:49 -07:00
|
|
|
#
|
2012-06-26 07:35:31 -07:00
|
|
|
# For compiling on MinGW you can run it with:
|
|
|
|
#
|
|
|
|
# make win32
|
|
|
|
#
|
2018-07-24 13:11:37 -07:00
|
|
|
# Or as MinGW by default has CC set to cc - but has no compiler by that name - you might have to do:
|
|
|
|
# make CC=gcc win32
|
2007-05-20 11:03:49 -07:00
|
|
|
|
|
|
|
#List of object files, separated based on engine architecture
|
Add IMeshTextureLoader interface and replace texture-loading algorithms in most meshloaders.
Previously each meshloader had implemented texture loading independendly. This had caused a lot of redundant codes and behaviour
between different meshloaders was often different. So we have now one common interface which should be used by all meshloaders.
This also allows deprecating TEXTURE_PATH attributes as those paths can now be set by that interface and for all meshloaders using it.
I have replaced the codes for the 3DS, B3D, CSM, Collada, DMF, LMTS, LWO, MY3D, OBJ, OCT, Ogre, SMF and X meshloader.
Not changed (just using old code) are: MS3D (I forgot that one), CIrrMeshFileLoader (haven't figured out how it works yet).
STL and PLY both don't load textures and need no changes.
MDL, MD3, MD2 and BSP all work a little different (the textureloading there isn't implemented inside the meshloaders). Those could maybe still be adapted.
Stuff still needs a lot more test (unfortunately I don't have test-models for most formats...), but wanted to check it in already to get some feedback.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4703 dfc29bdd-3216-0410-991c-e03cc46cb475
2014-03-01 16:56:46 -08:00
|
|
|
IRRMESHLOADER = CBSPMeshFileLoader.o CMD2MeshFileLoader.o CMD3MeshFileLoader.o CMS3DMeshFileLoader.o CB3DMeshFileLoader.o C3DSMeshFileLoader.o COgreMeshFileLoader.o COBJMeshFileLoader.o CColladaFileLoader.o CCSMLoader.o CDMFLoader.o CLMTSMeshFileLoader.o CMY3DMeshFileLoader.o COCTLoader.o CXMeshFileLoader.o CIrrMeshFileLoader.o CSTLMeshFileLoader.o CLWOMeshFileLoader.o CPLYMeshFileLoader.o CSMFMeshFileLoader.o CMeshTextureLoader.o
|
2015-04-23 11:11:52 -07:00
|
|
|
IRRMESHWRITER = CColladaMeshWriter.o CIrrMeshWriter.o CSTLMeshWriter.o COBJMeshWriter.o CPLYMeshWriter.o CB3DMeshWriter.o
|
2007-09-17 00:26:21 -07:00
|
|
|
IRRMESHOBJ = $(IRRMESHLOADER) $(IRRMESHWRITER) \
|
|
|
|
CSkinnedMesh.o CBoneSceneNode.o CMeshSceneNode.o \
|
|
|
|
CAnimatedMeshSceneNode.o CAnimatedMeshMD2.o CAnimatedMeshMD3.o \
|
2010-07-09 13:55:57 -07:00
|
|
|
CQ3LevelMesh.o CQuake3ShaderSceneNode.o CAnimatedMeshHalfLife.o
|
2011-01-17 12:12:17 -08:00
|
|
|
IRROBJ = CBillboardSceneNode.o CCameraSceneNode.o CDummyTransformationSceneNode.o CEmptySceneNode.o CGeometryCreator.o CLightSceneNode.o CMeshManipulator.o CMetaTriangleSelector.o COctreeSceneNode.o COctreeTriangleSelector.o CSceneCollisionManager.o CSceneManager.o CShadowVolumeSceneNode.o CSkyBoxSceneNode.o CSkyDomeSceneNode.o CTerrainSceneNode.o CTerrainTriangleSelector.o CVolumeLightSceneNode.o CCubeSceneNode.o CSphereSceneNode.o CTextSceneNode.o CTriangleBBSelector.o CTriangleSelector.o CWaterSurfaceSceneNode.o CMeshCache.o CDefaultSceneNodeAnimatorFactory.o CDefaultSceneNodeFactory.o CSceneLoaderIrr.o
|
2008-11-14 05:17:57 -08:00
|
|
|
IRRPARTICLEOBJ = CParticleAnimatedMeshSceneNodeEmitter.o CParticleBoxEmitter.o CParticleCylinderEmitter.o CParticleMeshEmitter.o CParticlePointEmitter.o CParticleRingEmitter.o CParticleSphereEmitter.o CParticleAttractionAffector.o CParticleFadeOutAffector.o CParticleGravityAffector.o CParticleRotationAffector.o CParticleSystemSceneNode.o CParticleScaleAffector.o
|
2008-04-28 15:16:11 -07:00
|
|
|
IRRANIMOBJ = CSceneNodeAnimatorCameraFPS.o CSceneNodeAnimatorCameraMaya.o CSceneNodeAnimatorCollisionResponse.o CSceneNodeAnimatorDelete.o CSceneNodeAnimatorFlyCircle.o CSceneNodeAnimatorFlyStraight.o CSceneNodeAnimatorFollowSpline.o CSceneNodeAnimatorRotation.o CSceneNodeAnimatorTexture.o
|
2015-11-29 12:12:51 -08:00
|
|
|
IRRDRVROBJ = CNullDriver.o COpenGLCacheHandler.o COpenGLDriver.o COpenGLNormalMapRenderer.o COpenGLParallaxMapRenderer.o COpenGLShaderMaterialRenderer.o COpenGLSLMaterialRenderer.o COpenGLExtensionHandler.o CD3D9Driver.o CD3D9HLSLMaterialRenderer.o CD3D9NormalMapRenderer.o CD3D9ParallaxMapRenderer.o CD3D9ShaderMaterialRenderer.o CD3D9Texture.o CGLXManager.o CWGLManager.o
|
2015-11-27 16:03:29 -08:00
|
|
|
IRRIMAGEOBJ = CColorConverter.o CImage.o CImageLoaderBMP.o CImageLoaderDDS.o CImageLoaderJPG.o CImageLoaderPCX.o CImageLoaderPNG.o CImageLoaderPSD.o CImageLoaderPVR.o CImageLoaderTGA.o CImageLoaderPPM.o CImageLoaderWAL.o CImageLoaderRGB.o \
|
2007-09-21 11:11:00 -07:00
|
|
|
CImageWriterBMP.o CImageWriterJPG.o CImageWriterPCX.o CImageWriterPNG.o CImageWriterPPM.o CImageWriterPSD.o CImageWriterTGA.o
|
|
|
|
IRRVIDEOOBJ = CVideoModeList.o CFPSCounter.o $(IRRDRVROBJ) $(IRRIMAGEOBJ)
|
2010-07-09 13:55:57 -07:00
|
|
|
IRRSWRENDEROBJ = CSoftwareDriver.o CSoftwareTexture.o CTRFlat.o CTRFlatWire.o CTRGouraud.o CTRGouraudWire.o CTRNormalMap.o CTRStencilShadow.o CTRTextureFlat.o CTRTextureFlatWire.o CTRTextureGouraud.o CTRTextureGouraudAdd.o CTRTextureGouraudNoZ.o CTRTextureGouraudWire.o CZBuffer.o CTRTextureGouraudVertexAlpha2.o CTRTextureGouraudNoZ2.o CTRTextureLightMap2_M2.o CTRTextureLightMap2_M4.o CTRTextureLightMap2_M1.o CSoftwareDriver2.o CSoftwareTexture2.o CTRTextureGouraud2.o CTRGouraud2.o CTRGouraudAlpha2.o CTRGouraudAlphaNoZ2.o CTRTextureDetailMap2.o CTRTextureGouraudAdd2.o CTRTextureGouraudAddNoZ2.o CTRTextureWire2.o CTRTextureLightMap2_Add.o CTRTextureLightMapGouraud2_M4.o IBurningShader.o CTRTextureBlend.o CTRTextureGouraudAlpha.o CTRTextureGouraudAlphaNoZ.o CDepthBuffer.o CBurningShader_Raster_Reference.o
|
|
|
|
IRRIOOBJ = CFileList.o CFileSystem.o CLimitReadFile.o CMemoryFile.o CReadFile.o CWriteFile.o CXMLReader.o CXMLWriter.o CWADReader.o CZipReader.o CPakReader.o CNPKReader.o CTarReader.o CMountPointReader.o irrXML.o CAttributes.o lzma/LzmaDec.o
|
2014-09-16 11:24:23 -07:00
|
|
|
IRROTHEROBJ = CIrrDeviceSDL.o CIrrDeviceLinux.o CIrrDeviceConsole.o CIrrDeviceStub.o CIrrDeviceWin32.o CIrrDeviceFB.o CLogger.o COSOperator.o Irrlicht.o os.o leakHunter.o CProfiler.o utf8.o
|
2014-04-24 15:52:10 -07:00
|
|
|
IRRGUIOBJ = CGUIButton.o CGUICheckBox.o CGUIComboBox.o CGUIContextMenu.o CGUIEditBox.o CGUIEnvironment.o CGUIFileOpenDialog.o CGUIFont.o CGUIImage.o CGUIInOutFader.o CGUIListBox.o CGUIMenu.o CGUIMeshViewer.o CGUIMessageBox.o CGUIModalScreen.o CGUIScrollBar.o CGUISpinBox.o CGUISkin.o CGUIStaticText.o CGUITabControl.o CGUITable.o CGUIToolBar.o CGUIWindow.o CGUIColorSelectDialog.o CDefaultGUIElementFactory.o CGUISpriteBank.o CGUIImageList.o CGUITreeView.o CGUIProfiler.o
|
2007-05-20 11:03:49 -07:00
|
|
|
ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o
|
2009-12-03 00:19:22 -08:00
|
|
|
JPEGLIBOBJ = jpeglib/jcapimin.o jpeglib/jcapistd.o jpeglib/jccoefct.o jpeglib/jccolor.o jpeglib/jcdctmgr.o jpeglib/jchuff.o jpeglib/jcinit.o jpeglib/jcmainct.o jpeglib/jcmarker.o jpeglib/jcmaster.o jpeglib/jcomapi.o jpeglib/jcparam.o jpeglib/jcprepct.o jpeglib/jcsample.o jpeglib/jctrans.o jpeglib/jdapimin.o jpeglib/jdapistd.o jpeglib/jdatadst.o jpeglib/jdatasrc.o jpeglib/jdcoefct.o jpeglib/jdcolor.o jpeglib/jddctmgr.o jpeglib/jdhuff.o jpeglib/jdinput.o jpeglib/jdmainct.o jpeglib/jdmarker.o jpeglib/jdmaster.o jpeglib/jdmerge.o jpeglib/jdpostct.o jpeglib/jdsample.o jpeglib/jdtrans.o jpeglib/jerror.o jpeglib/jfdctflt.o jpeglib/jfdctfst.o jpeglib/jfdctint.o jpeglib/jidctflt.o jpeglib/jidctfst.o jpeglib/jidctint.o jpeglib/jmemmgr.o jpeglib/jmemnobs.o jpeglib/jquant1.o jpeglib/jquant2.o jpeglib/jutils.o jpeglib/jcarith.o jpeglib/jdarith.o jpeglib/jaricom.o
|
2007-05-20 11:03:49 -07:00
|
|
|
LIBPNGOBJ = libpng/png.o libpng/pngerror.o libpng/pngget.o libpng/pngmem.o libpng/pngpread.o libpng/pngread.o libpng/pngrio.o libpng/pngrtran.o libpng/pngrutil.o libpng/pngset.o libpng/pngtrans.o libpng/pngwio.o libpng/pngwrite.o libpng/pngwtran.o libpng/pngwutil.o
|
2009-11-30 17:57:57 -08:00
|
|
|
LIBAESGM = aesGladman/aescrypt.o aesGladman/aeskey.o aesGladman/aestab.o aesGladman/fileenc.o aesGladman/hmac.o aesGladman/prng.o aesGladman/pwd2key.o aesGladman/sha1.o aesGladman/sha2.o
|
2009-12-05 10:16:21 -08:00
|
|
|
BZIP2OBJ = bzip2/blocksort.o bzip2/huffman.o bzip2/crctable.o bzip2/randtable.o bzip2/bzcompress.o bzip2/decompress.o bzip2/bzlib.o
|
|
|
|
|
2007-05-20 11:03:49 -07:00
|
|
|
# Next variable is for additional scene nodes etc. of customized Irrlicht versions
|
|
|
|
EXTRAOBJ =
|
2008-11-26 02:44:30 -08:00
|
|
|
LINKOBJ = $(IRRMESHOBJ) $(IRROBJ) $(IRRPARTICLEOBJ) $(IRRANIMOBJ) \
|
2007-09-04 11:51:42 -07:00
|
|
|
$(IRRVIDEOOBJ) $(IRRSWRENDEROBJ) $(IRRIOOBJ) $(IRROTHEROBJ) \
|
2009-11-30 17:45:55 -08:00
|
|
|
$(IRRGUIOBJ) $(ZLIBOBJ) $(JPEGLIBOBJ) $(LIBPNGOBJ) $(LIBAESGM) \
|
2009-12-05 10:16:21 -08:00
|
|
|
$(BZIP2OBJ) $(EXTRAOBJ)
|
2007-05-20 11:03:49 -07:00
|
|
|
|
|
|
|
###############
|
|
|
|
#Compiler flags
|
|
|
|
CXXINCS = -I../../include -Izlib -Ijpeglib -Ilibpng
|
2010-01-08 03:46:38 -08:00
|
|
|
CPPFLAGS += $(CXXINCS) -DIRRLICHT_EXPORTS=1
|
2009-10-23 11:06:57 -07:00
|
|
|
CXXFLAGS += -Wall -pipe -fno-exceptions -fno-rtti -fstrict-aliasing
|
2017-11-06 06:39:37 -08:00
|
|
|
#CXXFLAGS += -std=gnu++11 -U__STRICT_ANSI__
|
2007-05-20 11:03:49 -07:00
|
|
|
ifndef NDEBUG
|
2007-08-28 17:17:46 -07:00
|
|
|
CXXFLAGS += -g -D_DEBUG
|
2007-05-20 11:03:49 -07:00
|
|
|
else
|
|
|
|
CXXFLAGS += -fexpensive-optimizations -O3
|
|
|
|
endif
|
2007-09-12 10:45:29 -07:00
|
|
|
ifdef PROFILE
|
|
|
|
CXXFLAGS += -pg
|
|
|
|
endif
|
2010-01-08 03:46:38 -08:00
|
|
|
CFLAGS := -O3 -fexpensive-optimizations -DPNG_THREAD_UNSAFE_OK -DPNG_NO_MMX_CODE -DPNG_NO_MNG_FEATURES
|
2007-05-20 11:03:49 -07:00
|
|
|
|
2009-10-23 11:06:57 -07:00
|
|
|
sharedlib sharedlib_osx: CXXFLAGS += -fPIC
|
|
|
|
sharedlib sharedlib_osx: CFLAGS += -fPIC
|
2008-06-27 01:39:20 -07:00
|
|
|
|
2008-04-29 02:29:38 -07:00
|
|
|
#multilib handling
|
|
|
|
ifeq ($(HOSTTYPE), x86_64)
|
|
|
|
LIBSELECT=64
|
|
|
|
endif
|
|
|
|
|
2007-05-20 11:03:49 -07:00
|
|
|
#Linux specific options
|
2008-11-26 02:44:30 -08:00
|
|
|
staticlib sharedlib install: SYSTEM = Linux
|
2007-05-20 11:03:49 -07:00
|
|
|
STATIC_LIB = libIrrlicht.a
|
|
|
|
LIB_PATH = ../../lib/$(SYSTEM)
|
|
|
|
INSTALL_DIR = /usr/local/lib
|
2009-06-08 08:36:06 -07:00
|
|
|
sharedlib install: SHARED_LIB = libIrrlicht.so
|
2008-11-26 02:44:30 -08:00
|
|
|
sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm
|
|
|
|
staticlib sharedlib: CXXINCS += -I/usr/X11R6/include
|
|
|
|
|
|
|
|
#OSX specific options
|
|
|
|
staticlib_osx sharedlib_osx install_osx: SYSTEM = MacOSX
|
|
|
|
staticlib_osx sharedlib_osx: IRROTHEROBJ += MacOSX/CIrrDeviceMacOSX.o MacOSX/OSXClipboard.o MacOSX/AppDelegate.o
|
|
|
|
staticlib_osx sharedlib_osx: CXXINCS += -IMacOSX -I/usr/X11R6/include
|
2009-06-08 08:36:06 -07:00
|
|
|
sharedlib_osx install_osx: SHARED_LIB = libIrrlicht.dylib
|
2009-10-23 11:06:57 -07:00
|
|
|
staticlib_osx sharedlib_osx: LDFLAGS += --no-export-all-symbols --add-stdcall-alias
|
2008-11-26 02:44:30 -08:00
|
|
|
sharedlib_osx: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm
|
2009-12-17 04:04:55 -08:00
|
|
|
# for non-X11 app
|
|
|
|
#sharedlib_osx: LDFLAGS += -framework cocoa -framework carbon -framework opengl -framework IOKit
|
2007-05-20 11:03:49 -07:00
|
|
|
|
|
|
|
#Windows specific options
|
2009-10-23 11:06:57 -07:00
|
|
|
IRRLICHT_DLL := ../../bin/Win32-gcc/Irrlicht.dll
|
2007-05-20 11:03:49 -07:00
|
|
|
sharedlib_win32 staticlib_win32: SYSTEM = Win32-gcc
|
2012-06-26 03:52:27 -07:00
|
|
|
sharedlib_win32: LDFLAGS += -lgdi32 -lopengl32 -ld3dx9d -lwinmm -Wl,--add-stdcall-alias
|
2019-09-03 13:23:57 -07:00
|
|
|
#sharedlib_win32: LDFLAGS += -lSDL
|
2012-06-26 07:35:31 -07:00
|
|
|
#choose either -DIRR_COMPILE_WITH_DX9_DEV_PACK or -DNO_IRR_COMPILE_WITH_DIRECT3D_9_ depending if you need dx9
|
|
|
|
#sharedlib_win32 staticlib_win32: CPPFLAGS += -DIRR_COMPILE_WITH_DX9_DEV_PACK
|
|
|
|
sharedlib_win32 staticlib_win32: CPPFLAGS += -DNO_IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_ -DNO_IRR_COMPILE_WITH_DIRECT3D_9_
|
2007-09-20 08:33:36 -07:00
|
|
|
sharedlib_win32 staticlib_win32: CPPFLAGS += -DIRR_COMPILE_WITH_DX9_DEV_PACK -D__GNUWIN32__ -D_WIN32 -DWIN32 -D_WINDOWS -D_MBCS -D_USRDLL
|
2007-05-20 11:03:49 -07:00
|
|
|
staticlib_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
|
|
|
|
|
2011-08-04 15:50:44 -07:00
|
|
|
VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_RELEASE)
|
|
|
|
SHARED_FULLNAME = $(SHARED_LIB).$(VERSION)
|
|
|
|
SONAME = $(SHARED_LIB).$(VERSION_MAJOR).$(VERSION_MINOR)
|
|
|
|
|
2007-05-20 11:03:49 -07:00
|
|
|
####################
|
2010-01-08 03:46:38 -08:00
|
|
|
# All target, builds Irrlicht as static lib (libIrrlicht.a) and copies it into lib/Linux
|
2007-05-20 11:03:49 -07:00
|
|
|
all linux: staticlib
|
|
|
|
|
2010-01-08 03:46:38 -08:00
|
|
|
# Builds Irrlicht as shared lib (libIrrlicht.so.versionNumber) and copies it into lib/Linux
|
2007-05-20 11:03:49 -07:00
|
|
|
sharedlib: $(LINKOBJ)
|
2011-08-04 15:50:44 -07:00
|
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(SONAME) -o $(SHARED_FULLNAME) $^ $(LDFLAGS)
|
2010-01-08 03:46:38 -08:00
|
|
|
mkdir -p $(LIB_PATH)
|
2011-08-04 15:50:44 -07:00
|
|
|
cp $(SHARED_FULLNAME) $(LIB_PATH)
|
2007-05-20 11:03:49 -07:00
|
|
|
|
|
|
|
# Builds Irrlicht as static lib (libIrrlicht.a)
|
|
|
|
$(STATIC_LIB): $(LINKOBJ)
|
|
|
|
$(AR) rs $@ $^
|
|
|
|
|
2010-01-08 03:46:38 -08:00
|
|
|
# Copies static lib into lib/Linux
|
2008-11-09 03:24:06 -08:00
|
|
|
staticlib staticlib_osx: $(STATIC_LIB)
|
2010-01-08 03:46:38 -08:00
|
|
|
mkdir -p $(LIB_PATH)
|
2007-05-20 11:03:49 -07:00
|
|
|
cp $^ $(LIB_PATH)
|
|
|
|
|
|
|
|
# Builds Irrlicht as dll (Irrlicht.dll) into ../../bin/Win32-gcc
|
2007-06-25 16:34:16 -07:00
|
|
|
all_win32 win32: sharedlib_win32
|
2007-05-20 11:03:49 -07:00
|
|
|
sharedlib_win32: $(IRRLICHT_DLL)
|
|
|
|
../../bin/Win32-gcc/Irrlicht.dll: $(LINKOBJ)
|
|
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -shared -o $@ $^ $(LDFLAGS) -Wl,--out-implib,../../lib/Win32-gcc/$(STATIC_LIB)
|
|
|
|
# Copies static lib into /lib/Win32-gcc
|
|
|
|
staticlib_win32: $(STATIC_LIB)
|
|
|
|
cp $^ $(LIB_PATH)
|
|
|
|
|
2009-06-08 08:36:06 -07:00
|
|
|
# Builds Irrlicht as shared lib (libIrrlicht.so.versionNumber) and copies it into /lib/MacOSX
|
2008-11-09 03:24:06 -08:00
|
|
|
sharedlib_osx: $(LINKOBJ)
|
2011-08-04 15:50:44 -07:00
|
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -dynamiclib -Wl,-install_name,$(SONAME) -o $(SHARED_FULLNAME) $^ $(LDFLAGS)
|
|
|
|
cp $(SHARED_FULLNAME) $(LIB_PATH)
|
2008-11-09 03:24:06 -08:00
|
|
|
|
2007-05-20 11:03:49 -07:00
|
|
|
# Installs Irrlicht if it was created as shared lib
|
2009-10-23 11:06:57 -07:00
|
|
|
install install_osx:
|
2009-06-08 08:36:06 -07:00
|
|
|
$(RM) -r $(INSTALL_DIR)/../include/irrlicht
|
|
|
|
mkdir -p $(INSTALL_DIR)/../include/irrlicht
|
2009-08-12 02:55:47 -07:00
|
|
|
cp ../../include/*.h $(INSTALL_DIR)/../include/irrlicht/
|
2011-08-04 15:50:44 -07:00
|
|
|
cp $(LIB_PATH)/$(SHARED_FULLNAME) $(INSTALL_DIR)
|
|
|
|
cd $(INSTALL_DIR) && ln -s -f $(SHARED_FULLNAME) $(SONAME)
|
|
|
|
cd $(INSTALL_DIR) && ln -s -f $(SONAME) $(SHARED_LIB)
|
2009-10-23 11:06:57 -07:00
|
|
|
# ldconfig -n $(INSTALL_DIR)
|
2008-11-09 03:24:06 -08:00
|
|
|
|
2008-11-20 14:33:36 -08:00
|
|
|
TAGS:
|
|
|
|
ctags *.cpp ../../include/*.h *.h
|
|
|
|
|
2007-05-20 11:03:49 -07:00
|
|
|
# Create dependency files for automatic recompilation
|
|
|
|
%.d:%.cpp
|
|
|
|
$(CXX) $(CPPFLAGS) -MM -MF $@ $<
|
|
|
|
|
2009-12-01 01:30:30 -08:00
|
|
|
# Create dependency files for automatic recompilation
|
|
|
|
%.d:%.c
|
|
|
|
$(CC) $(CPPFLAGS) -MM -MF $@ $<
|
|
|
|
|
2008-11-26 02:44:30 -08:00
|
|
|
# Create object files from objective-c code
|
|
|
|
%.o:%.mm
|
2008-11-29 14:35:56 -08:00
|
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
|
2008-11-26 02:44:30 -08:00
|
|
|
|
2008-11-20 14:33:36 -08:00
|
|
|
ifneq ($(MAKECMDGOALS),clean)
|
2007-05-20 11:03:49 -07:00
|
|
|
-include $(LINKOBJ:.o=.d)
|
2008-11-20 14:33:36 -08:00
|
|
|
endif
|
2007-05-20 11:03:49 -07:00
|
|
|
|
2007-09-04 11:51:42 -07:00
|
|
|
help:
|
2007-05-20 11:03:49 -07:00
|
|
|
@echo "Available targets for Irrlicht"
|
|
|
|
@echo " sharedlib: Build shared library Irrlicht.so for Linux"
|
|
|
|
@echo " staticlib: Build static library Irrlicht.a for Linux"
|
2010-01-08 03:46:38 -08:00
|
|
|
@echo " install: Copy shared library to /usr/local/lib"
|
2007-05-20 11:03:49 -07:00
|
|
|
@echo ""
|
|
|
|
@echo " sharedlib_win32: Build shared library Irrlicht.dll for Windows"
|
|
|
|
@echo " staticlib_win32: Build static library Irrlicht.a for Windows"
|
|
|
|
@echo ""
|
|
|
|
@echo " clean: Clean up directory"
|
|
|
|
|
2007-09-04 11:51:42 -07:00
|
|
|
# Cleans all temporary files and compilation results.
|
2007-05-20 11:03:49 -07:00
|
|
|
clean:
|
2011-08-04 15:50:44 -07:00
|
|
|
$(RM) $(LINKOBJ) $(SHARED_FULLNAME) $(STATIC_LIB) $(LINKOBJ:.o=.d)
|
2007-05-20 11:03:49 -07:00
|
|
|
|
|
|
|
.PHONY: all sharedlib staticlib sharedlib_win32 staticlib_win32 help install clean
|
|
|
|
|