PROJECT(Lightfeather) CMAKE_MINIMUM_REQUIRED(VERSION 2.6) CMAKE_POLICY(VERSION 2.6) # Enable all compiler warnings and debug support ADD_DEFINITIONS(-Wall -g) #include Lightfeather headers INCLUDE_DIRECTORIES(include) IF(CMAKE_GENERATOR STREQUAL "MinGW Makefiles") ADD_DEFINITIONS(-DMINGW) ENDIF(CMAKE_GENERATOR STREQUAL "MinGW Makefiles") # Compile switches SET(USE_INTERNAL_ZLIB NO CACHE BOOL "Use internal ZLIB library") SET(USE_INTERNAL_FREETYPE NO CACHE BOOL "Use internal FreeType2 library") SET(USE_INTERNAL_PNG NO CACHE BOOL "Use internal PNG library") SET(USE_INTERNAL_JPEG NO CACHE BOOL "Use internal JPEG library") SET(BUILD_TESTS YES CACHE BOOL "Build tests") SET(BUILD_TUTORIALS YES CACHE BOOL "Build tutorials") # All built libraries are stored here, as well as binaries LINK_DIRECTORIES(${Lightfeather_BUILD_DIR}) # ================================ ZLIB ================================ IF(USE_INTERNAL_ZLIB) # Build internal PNG INCLUDE_DIRECTORIES(ext/zlib) AUX_SOURCE_DIRECTORY(ext/zlib ZLIB_SRC) # Compile Z library ADD_LIBRARY(z SHARED ${ZLIB_SRC}) SET(ZLIB_LIBRARIES z) ELSE(USE_INTERNAL_ZLIB) INCLUDE(FindZLIB) FIND_PACKAGE(ZLIB REQUIRED) INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) ADD_DEFINITIONS(${ZLIB_DEFINITIONS}) ENDIF(USE_INTERNAL_ZLIB) # ============================== FreeType ============================== IF(USE_INTERNAL_FREETYPE) # Build internal FreeType2 INCLUDE_DIRECTORIES(ext/freetype2/include) INCLUDE_DIRECTORIES(ext/freetype2/include/freetype) SET(FREETYPE_SRC ext/freetype2/src/autofit/autofit.c ext/freetype2/src/base/ftbase.c ext/freetype2/src/base/ftbbox.c ext/freetype2/src/base/ftbdf.c ext/freetype2/src/base/ftbitmap.c ext/freetype2/src/base/ftglyph.c ext/freetype2/src/base/ftinit.c ext/freetype2/src/base/ftpfr.c ext/freetype2/src/base/ftsystem.c ext/freetype2/src/base/ftwinfnt.c ext/freetype2/src/bdf/bdf.c ext/freetype2/src/cff/cff.c ext/freetype2/src/cid/type1cid.c ext/freetype2/src/gzip/ftgzip.c ext/freetype2/src/lzw/ftlzw.c ext/freetype2/src/otvalid/otvalid.c ext/freetype2/src/pcf/pcf.c ext/freetype2/src/pfr/pfr.c ext/freetype2/src/psaux/psaux.c ext/freetype2/src/pshinter/pshinter.c ext/freetype2/src/psnames/psnames.c ext/freetype2/src/raster/raster.c ext/freetype2/src/sfnt/sfnt.c ext/freetype2/src/smooth/smooth.c ext/freetype2/src/truetype/truetype.c ext/freetype2/src/type1/type1.c ext/freetype2/src/type42/type42.c ext/freetype2/src/winfonts/winfnt.c) # Compile FreeType2 library ADD_LIBRARY(Freetype SHARED ${FREETYPE_SRC}) TARGET_LINK_LIBRARIES(Freetype z) SET(FREETYPE_LIBRARIES Freetype) ELSE(USE_INTERNAL_FREETYPE) # Use system FreeType2 INCLUDE(FindFreetype) FIND_PACKAGE(Freetype REQUIRED) INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS}) ENDIF(USE_INTERNAL_FREETYPE) # ================================= PNG ================================ IF(USE_INTERNAL_PNG) # Build internal PNG # Undefine assembler code, because it barks ADD_DEFINITIONS(-DPNG_NO_ASSEMBLER_CODE) INCLUDE_DIRECTORIES(ext/libpng) AUX_SOURCE_DIRECTORY(ext/libpng PNG_SRC) # Compile PNG library ADD_LIBRARY(png SHARED ${PNG_SRC}) TARGET_LINK_LIBRARIES(png z) SET(PNG_LIBRARIES png) ELSE(USE_INTERNAL_PNG) INCLUDE(FindPNG) FIND_PACKAGE(PNG REQUIRED) INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR}) ADD_DEFINITIONS(${PNG_DEFINITIONS}) ENDIF(USE_INTERNAL_PNG) # ================================ JPEG ================================ IF(USE_INTERNAL_JPEG) # Build internal JPEG INCLUDE_DIRECTORIES(ext/jpeglib) SET(JPEG_SRC ext/jpeglib/jcapimin.c ext/jpeglib/jcapistd.c ext/jpeglib/jccoefct.c ext/jpeglib/jccolor.c ext/jpeglib/jcdctmgr.c ext/jpeglib/jchuff.c ext/jpeglib/jcinit.c ext/jpeglib/jcmainct.c ext/jpeglib/jcmarker.c ext/jpeglib/jcmaster.c ext/jpeglib/jcomapi.c ext/jpeglib/jcparam.c ext/jpeglib/jcphuff.c ext/jpeglib/jcprepct.c ext/jpeglib/jcsample.c ext/jpeglib/jctrans.c ext/jpeglib/jdapimin.c ext/jpeglib/jdapistd.c ext/jpeglib/jdatadst.c ext/jpeglib/jdatasrc.c ext/jpeglib/jdcoefct.c ext/jpeglib/jdcolor.c ext/jpeglib/jddctmgr.c ext/jpeglib/jdhuff.c ext/jpeglib/jdinput.c ext/jpeglib/jdmainct.c ext/jpeglib/jdmarker.c ext/jpeglib/jdmaster.c ext/jpeglib/jdmerge.c ext/jpeglib/jdphuff.c ext/jpeglib/jdpostct.c ext/jpeglib/jdsample.c ext/jpeglib/jdtrans.c ext/jpeglib/jerror.c ext/jpeglib/jfdctflt.c ext/jpeglib/jfdctfst.c ext/jpeglib/jfdctint.c ext/jpeglib/jidctflt.c ext/jpeglib/jidctfst.c ext/jpeglib/jidctint.c ext/jpeglib/jidctred.c ext/jpeglib/jquant1.c ext/jpeglib/jquant2.c ext/jpeglib/jutils.c ext/jpeglib/jmemmgr.c ext/jpeglib/jmemnobs.c ) # Compile JPEG library ADD_LIBRARY(jpeg SHARED ${JPEG_SRC}) SET(JPEG_LIBRARIES jpeg) ELSE(USE_INTERNAL_JPEG) INCLUDE(FindJPEG) FIND_PACKAGE(JPEG REQUIRED) INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR}) ENDIF(USE_INTERNAL_JPEG) # ============================ Lightfeather ============================ # Hack for MinGW's stat.h ADD_DEFINITIONS(-D__MSVCRT_VERSION__=0x0601) # Lightfeather source directories # Generated by running `find src/ -type d' SET(LF_SRC src/os/CFileListMac.cpp src/os/CFileListWin32.cpp src/os/CTimerWin32.cpp src/os/CFileInfoWin32.cpp src/os/CFileSystem.cpp src/os/CLimitReadFile.cpp src/os/COSInterfaceWin32.cpp src/os/CSimulationTimer.cpp src/os/CAVIStreamReaderWin32.cpp src/os/CTextReader.cpp src/os/COSInterfaceStub.cpp src/os/CRandomizer.cpp src/os/CZipFSTypeHandler.cpp src/os/CFileSystemMac.cpp src/os/COSInterfaceMac.cpp src/os/CZipReader.cpp src/os/CMemoryReadFile.cpp src/os/CConfigHandlerINI.cpp src/os/CFileSystemWin32.cpp src/os/CFileInfo.cpp src/os/CVideoStreamReader.cpp src/os/CParallelHandler.cpp src/os/CXMLWriter.cpp src/os/CAVStreamReaderFFmpeg.cpp src/os/CFileInfoMac.cpp src/os/CConfigHandlerXML.cpp src/os/CFile.cpp src/os/aglGetProcAddress.cpp src/os/CFileMonitor.cpp src/os/CDynamicLibrary.cpp src/os/CConsoleWndWin32.cpp src/os/CTimerMac.cpp src/os/CFileName.cpp src/os/CLFOS.cpp src/os/CHWOperatorLinux.cpp src/os/CXMLReader.cpp src/os/CFileList.cpp src/os/CFileListLinux.cpp src/os/NSGLGetProcAddress.cpp src/os/CTimerLinux.cpp src/os/CFileInfoLinux.cpp src/os/COSInterfaceLinux.cpp src/os/CFileModificationEvent.cpp src/os/CEndianRuntimeSwap.cpp src/os/CConsoleWnd.cpp src/os/CConsoleEvent.cpp src/os/CFileSystemLinux.cpp src/os/CHWOperatorMac.cpp src/os/CHWOperatorWin32.cpp src/log/CConsoleLogChannel.cpp src/log/CFileLogChannel.cpp src/log/CHtmlLogChannel.cpp src/log/CLogger.cpp src/log/CLogChannel.cpp src/log/CLoggerEvent.cpp src/log/CLFLog.cpp src/log/CLogEvent.cpp src/net/list.cpp src/net/CSocket.cpp src/net/CLFNet.cpp src/net/CHost.cpp src/net/CNetTimer.cpp src/net/CNetAddress.cpp src/net/CPeer.cpp src/core/CNode.cpp src/core/CEvent.cpp src/core/CSpline.cpp src/core/CColorF.cpp src/core/CColorI.cpp src/core/CRTTI.cpp src/core/CProperties.cpp src/core/CSpacial.cpp src/core/CStringTokenizer.cpp src/core/CTreeElement.cpp src/core/CColorConverter.cpp src/core/CSpacialNodeEvent.cpp src/core/CCommandLineParser.cpp src/core/CSpacialNode.cpp src/util/CProfilerSampleLogDumper.cpp src/util/CLFProfiler.cpp src/input/CCursorControlWx.cpp src/input/CCursorControlLinux.cpp src/input/CInputModifiers.cpp src/input/CInputEvent.cpp src/input/CCursorControlWin32.cpp src/input/CKeyEvent.cpp src/input/CMouseEvent.cpp src/input/CCursorControlMac.cpp src/scene/lod/CLODConditionDistance.cpp src/scene/lod/CLODConditionSizeOnScreen.cpp src/scene/lod/CLODConditionPixelsOnScreen.cpp src/scene/lod/CLODChangeModel.cpp src/scene/CIndexOctTreeNode.cpp src/scene/CPagingManager.cpp src/scene/CSceneNodeController.cpp src/scene/CPortalSystem.cpp src/scene/CGroupSceneNode.cpp src/scene/CSector.cpp src/scene/CSceneSerializer.cpp src/scene/CSkySceneNode.cpp src/scene/shadowmapping/CFocusedShadowMapSetup.cpp src/scene/shadowmapping/CBasicShadowMapSetup.cpp src/scene/shadowmapping/serializers/CBasicShadowMapSerializer.cpp src/scene/shadowmapping/serializers/CFocusedShadowMapSerializer.cpp src/scene/COctTreeModelSceneNode.cpp src/scene/editors/CSceneEditor.cpp src/scene/editors/CGizmoSceneNode.cpp src/scene/COrthoCamera.cpp src/scene/CSceneStateLight.cpp src/scene/CModelSceneNode.cpp src/scene/CSceneNodeEvent.cpp src/scene/CLight.cpp src/scene/CProjector.cpp src/scene/CAtmosphereSceneNode.cpp src/scene/CSceneStateShadowCaster.cpp src/scene/CViewFrustum.cpp src/scene/CSceneRenderList.cpp src/scene/controllers/CFlyForwardController.cpp src/scene/controllers/CFlyLineController.cpp src/scene/controllers/CEditorController.cpp src/scene/controllers/CRotationController.cpp src/scene/controllers/CThirdPersonController.cpp src/scene/controllers/CMaintainRotationController.cpp src/scene/controllers/CFPSController.cpp src/scene/controllers/CMaintainSizeController.cpp src/scene/controllers/CFlyCircleController.cpp src/scene/controllers/CFaceViewPlaneController.cpp src/scene/controllers/serializers/CMaintainSizeControllerSerializer.cpp src/scene/controllers/serializers/CRotationControllerSerializer.cpp src/scene/controllers/serializers/CFlyLineControllerSerializer.cpp src/scene/controllers/serializers/CMaintainRotationControllerSerializer.cpp src/scene/controllers/serializers/CSceneNodeControllerSerializer.cpp src/scene/controllers/serializers/CFlyForwardControllerSerializer.cpp src/scene/controllers/serializers/CFlyCircleControllerSerializer.cpp src/scene/controllers/CFlySplineController.cpp src/scene/controllers/CMovementController.cpp src/scene/CCamera.cpp src/scene/CQuadTreeNode.cpp src/scene/C2DCamera.cpp src/scene/CIndexOctTree.cpp src/scene/CQuadTreeSceneNode.cpp src/scene/CSceneStateProjector.cpp src/scene/C3DCamera.cpp src/scene/CSceneState.cpp src/scene/CLargeTerrainSceneNode.cpp src/scene/CLODSceneNode.cpp src/scene/CPVSCalculator.cpp src/scene/serializers/CModelSceneNodeSerializer.cpp src/scene/serializers/CSceneNodeSerializer.cpp src/scene/serializers/CLODSceneNodeSerializer.cpp src/scene/serializers/COctTreeModelSceneNodeSerializer.cpp src/scene/serializers/CCameraSceneNodeSerializer.cpp src/scene/serializers/CLargeTerrainSceneNodeSerializer.cpp src/scene/serializers/CLightSceneNodeSerializer.cpp src/scene/serializers/CGroupSceneNodeSerializer.cpp src/scene/CPortal.cpp src/scene/CSceneStateContainer.cpp src/scene/CSceneNodeSelectorAll.cpp src/scene/CSceneManager.cpp src/scene/CJointSceneNode.cpp src/scene/CPVSSceneNode.cpp src/scene/CSceneNode.cpp src/scene/CSceneStateShadowReceiver.cpp src/sound/CSound.cpp src/sound/CFormatPCM.cpp src/sound/CLFSound.cpp src/sound/CBufferPCM.cpp src/threads/pthreads/CThreadConditionPThread.cpp src/threads/pthreads/CThreadMutexPThread.cpp src/threads/pthreads/CThreadBarrierPThread.cpp src/threads/pthreads/CThreadSystemPThread.cpp src/threads/pthreads/CThreadBasePThread.cpp src/threads/win32/CThreadBarrierWin32.cpp src/threads/win32/CThreadSystemWin32.cpp src/threads/win32/CThreadMutexWin32.cpp src/threads/win32/CThreadBaseWin32.cpp src/threads/win32/CThreadConditionWin32.cpp src/threads/CLFThread.cpp src/render/gui/text/CTextDocument.cpp src/render/gui/text/CPasswordDocument.cpp src/render/gui/text/CTextSelection.cpp src/render/gui/text/CCaret.cpp src/render/gui/text/CAbstractLayout.cpp src/render/gui/text/CCaretEvent.cpp src/render/gui/text/CDocumentEvent.cpp src/render/gui/text/CLayoutLineList.cpp src/render/gui/text/CTextSelectionEvent.cpp src/render/gui/text/CCharacterSelection.cpp src/render/gui/text/CLayout.cpp src/render/gui/text/CAbstractTextDocument.cpp src/render/gui/CGUIRenderList.cpp src/render/gui/CGUIWindow.cpp src/render/gui/CLine2D.cpp src/render/gui/CGUIToolbar.cpp src/render/gui/CGUIProgressWindow.cpp src/render/gui/CGUIContainerEvent.cpp src/render/gui/CGUIRadioButtonGroup.cpp src/render/gui/CGUISplitterEvent.cpp src/render/gui/CGUIPropertyGrid.cpp src/render/gui/CGUIManager.cpp src/render/gui/CGUITreeViewEvent.cpp src/render/gui/CGUISelectionEvent.cpp src/render/gui/CGUIWindowTitleBar.cpp src/render/gui/CGUIProgressBar.cpp src/render/gui/CGUITab.cpp src/render/gui/CGUIContextMenu.cpp src/render/gui/CGUITreeView.cpp src/render/gui/CGUIFader.cpp src/render/gui/CGUIWindowTitle.cpp src/render/gui/CGUIActionEvent.cpp src/render/gui/CGUIFileDialog.cpp src/render/gui/CGUIWidget.cpp src/render/gui/CGUIModalLoop.cpp src/render/gui/CGUIScrollingEvent.cpp src/render/gui/CGUILabel.cpp src/render/gui/CGUIEditBox.cpp src/render/gui/CGUISplitter.cpp src/render/gui/CGUIMessageBox.cpp src/render/gui/CGUIScrollControl.cpp src/render/gui/CGUIGrid.cpp src/render/gui/CGUIPanel.cpp src/render/gui/CGUIComboBox.cpp src/render/gui/CGUIListBox.cpp src/render/gui/CGUICheckBox.cpp src/render/gui/CGUITabControl.cpp src/render/gui/CGUIEvent.cpp src/render/gui/CGUITextEntryDialog.cpp src/render/gui/CGUIImageList.cpp src/render/gui/CGUIButton.cpp src/render/gui/CGUIGridEvent.cpp src/render/gui/CGUIDefaultGridCellEditors.cpp src/render/gui/CGUISliderVertical.cpp src/render/gui/CGUISliderHorizontal.cpp src/render/gui/CGUIImage.cpp src/render/gui/CGUIMenuItem.cpp src/render/gui/CGUIMousePointer.cpp src/render/gui/CGUITheme.cpp src/render/gui/CGUIAnimator.cpp src/render/gui/CGUIMenuBar.cpp src/render/gui/CGUIColorDialog.cpp src/render/gui/CGUIMathEditBox.cpp src/render/gui/CGUITextEvent.cpp src/render/gui/CGUIRadioButton.cpp src/render/gui/CGUITextArea.cpp src/render/gui/CGUIChoiceDialog.cpp src/render/gui/CGUIPropertyGridEvent.cpp src/render/gui/CSprite.cpp src/render/CRendererPipelineForward.cpp src/render/CVideoModeList.cpp src/render/CRenderFeatureRegistry.cpp src/render/CRenderPassOpenGLCg.cpp src/render/renderpasses/oppl/CRPOPPLOGLSL2TextureBlend.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightPointPMShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightmapAdd.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightmap.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLDetailmap.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLDepthOnly.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLVertexColor.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightSpotPMShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSL3TextureBlend.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLTranslucentAdd.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLTransparent.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightDirectionalVNShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightDirectionalNMShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightSpotNM.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightSpotPM.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLVertexColorSplatting4.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLSkyBox.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLDiffusemap.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightSpotVN.cpp src/render/renderpasses/oppl/CRPOPPLOGLSL2LayerMulTextureAlpha.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightDirectionalNM.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightDirectionalPM.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightDirectionalPMShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightPointVNShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLTranslucent.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightPointNMShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightPointNM.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightDirectionalVN.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightPointPM.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLAmbient.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLTransparentAmbient.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightPointVN.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightSpotVNShadowed.cpp src/render/renderpasses/oppl/CRPOPPLOGLSLLightSpotNMShadowed.cpp src/render/renderpasses/singlepass/CRPOGLDiffuseMapCubeMap.cpp src/render/renderpasses/singlepass/CRPOGLShadowVolumeZPass.cpp src/render/renderpasses/singlepass/CRPOGLDiffuseMap.cpp src/render/renderpasses/singlepass/CRPOGLSLShadowMap.cpp src/render/renderpasses/singlepass/CRPOGLProjectedTexture.cpp src/render/renderpasses/singlepass/CRPOGLTranslucent.cpp src/render/renderpasses/singlepass/CRPOGLSLVertexColorSplatting.cpp src/render/renderpasses/singlepass/CRPOGL2LayerMulTextureAlpha.cpp src/render/renderpasses/singlepass/CRPOGLTranslucentCubeMap.cpp src/render/renderpasses/singlepass/CRPOGLCgPerPixelLighting.cpp src/render/renderpasses/singlepass/CRPOGLVertexBlend.cpp src/render/renderpasses/singlepass/CRPOGLSLLitParallaxMapping.cpp src/render/renderpasses/singlepass/CRPOGLSkyBox.cpp src/render/renderpasses/singlepass/CRPOGLShadowVolumeQuad.cpp src/render/renderpasses/singlepass/CRPOGLLightmapAdd.cpp src/render/renderpasses/singlepass/CRPOGLCubeMapReflection.cpp src/render/renderpasses/singlepass/CRPOGLCustomPVSCalc.cpp src/render/renderpasses/singlepass/CRPOGLSLParallaxMapping.cpp src/render/renderpasses/singlepass/CRPOGLShadowMap.cpp src/render/renderpasses/singlepass/CRPOGLTranslucentAdd.cpp src/render/renderpasses/singlepass/CRPOGLVertexColorSplatting.cpp src/render/renderpasses/singlepass/CRPOGLSLNormalMapping.cpp src/render/renderpasses/singlepass/CRPOGLDetailMap.cpp src/render/renderpasses/singlepass/CRPOGLLightmap.cpp src/render/renderpasses/singlepass/CRPOGLCgTangentSpaceNormalMap.cpp src/render/renderpasses/singlepass/CRPOGLVertexColorSplattingDetail.cpp src/render/renderpasses/singlepass/CRPOGL2LayerCustomFixed.cpp src/render/renderpasses/singlepass/CRPOGLSLCustom.cpp src/render/renderpasses/singlepass/CRPOGLCgReliefTextureMap.cpp src/render/renderpasses/singlepass/CRPOGLSLPerPixelSpotLight.cpp src/render/renderpasses/singlepass/CRPOGLShadowVolumeZFail.cpp src/render/renderpasses/singlepass/CRPOGLTransparent.cpp src/render/renderpasses/singlepass/CRPOGLCustomCg.cpp src/render/renderpasses/singlepass/CRPOGLColorOnly.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLColorOnly.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLTangentSpaceNormalMap.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightSpot.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightSpotShadowed.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightDirectionalShadowed.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLVertexColorSplatting4.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLTranslucent.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLTranslucentAdd.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightPoint.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLDetailmap.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLTangentSpaceParallaxMap.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLDepthOnly.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLSkyBox.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightPointShadowed.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLDiffusemap.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightDirectional.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightmapAdd.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLSkyDome.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLAmbient.cpp src/render/renderpasses/deferred/CRPDeferredOGLSLLightmap.cpp src/render/CRenderWindowLinux.cpp src/render/CVideoController.cpp src/render/renderstates/CRenderStateVertexColor.cpp src/render/renderstates/CRenderStateColorMask.cpp src/render/renderstates/CRenderStateShading.cpp src/render/renderstates/CRenderStateSpecularLighting.cpp src/render/renderstates/CRenderStatePolygonOffset.cpp src/render/renderstates/CRenderStateAmbientLight.cpp src/render/renderstates/CRenderStateAlphaBlend.cpp src/render/renderstates/CRenderStateFillMode.cpp src/render/renderstates/CRenderStateLighting.cpp src/render/renderstates/CRenderStateDither.cpp src/render/renderstates/CRenderStateNormalizeNormals.cpp src/render/renderstates/CRenderStateAlphaTest.cpp src/render/renderstates/CRenderStateFog.cpp src/render/renderstates/CRenderStateStencilBuffer.cpp src/render/renderstates/CRenderStatePrimaryColor.cpp src/render/renderstates/CRenderStateDepthBuffer.cpp src/render/renderstates/CRenderStateCulling.cpp src/render/renderstates/CRenderStateAntiAliasing.cpp src/render/renderstates/CRenderStateColorMaterial.cpp src/render/CRenderLayer.cpp src/render/CTexCoordMapping.cpp src/render/CRenderPassOpenGL.cpp src/render/CRenderWindowStub.cpp src/render/CPostProcessorStep.cpp src/render/CRenderPassOpenGLSL.cpp src/render/CRenderFeatureImplementation.cpp src/render/CVideoDirectX9.cpp src/render/CRenderContextOpenGLWx.cpp src/render/CRenderContextStub.cpp src/render/CRenderContextOpenGLLinux.cpp src/render/CRenderContextOpenGLMac.cpp src/render/CRenderState.cpp src/render/CFrameEvent.cpp src/render/CRenderWindowMac.cpp src/render/CPostProcessor.cpp src/render/CTextureSetup.cpp src/render/CRenderWindowWin32.cpp src/render/CRenderContextCapabilities.cpp src/render/CRendererPipelineDeferred.cpp src/render/CRenderWindowEvent.cpp src/render/CRenderLayerEvent.cpp src/render/CRenderContextOpenGLWin32.cpp src/render/CRenderPassParameterContainer.cpp src/render/CRendererPipelineForwardMultiPass.cpp src/render/CRenderLayerPP.cpp src/render/CRenderStateContainer.cpp src/render/CLFRender.cpp src/render/CRenderContextOpenGLStub.cpp src/render/CRenderWindowWx.cpp src/resources/CResourceLoader.cpp src/resources/CSkeletalPose.cpp src/resources/CModel.cpp src/resources/CModelAnimator.cpp src/resources/particles/CParticleSystemEvent.cpp src/resources/particles/CParticleAffectorScale.cpp src/resources/particles/CParticleShaper.cpp src/resources/particles/CParticleShaperPositionModel.cpp src/resources/particles/CParticleAffectorWave.cpp src/resources/particles/CParticleShaperVelocityInit.cpp src/resources/particles/CParticleShaperTTLRange.cpp src/resources/particles/CEyePointBillboardParticleEmitter.cpp src/resources/particles/CParticleShaperPositionImage.cpp src/resources/particles/CParticleShaperVelocityRange.cpp src/resources/particles/CParticleSystem.cpp src/resources/particles/CPointSpriteParticleEmitter.cpp src/resources/particles/CParticleShaperPositionBox.cpp src/resources/particles/CViewPlaneBillboardParticleEmitter.cpp src/resources/particles/CParticleShaperPosition.cpp src/resources/particles/CParticleShaperPositionLine.cpp src/resources/particles/CParticleAffectorZSort.cpp src/resources/particles/CPointParticleEmitter.cpp src/resources/particles/CParticleShaperPositionSphere.cpp src/resources/particles/CAxialBillboardParticleEmitter.cpp src/resources/particles/CParticleShaperPositionMesh.cpp src/resources/particles/CParticleAffectorConstantAcceleration.cpp src/resources/particles/CParticleAffectorFadeOut.cpp src/resources/particles/CParticleAffectorFadeInOut.cpp src/resources/particles/CParticleEmitterEvent.cpp src/resources/particles/CParticleEmitter.cpp src/resources/particles/CParticleShaperTexCoord.cpp src/resources/particles/CParticleShaperPositionPoint.cpp src/resources/particles/CParticleAffectorRotation.cpp src/resources/particles/CParticleShaperColorRange.cpp src/resources/particles/CParticleShaperSizeRange.cpp src/resources/particles/CParticleShaperSpecColorRange.cpp src/resources/particles/CParticleShaperPositionModelNode.cpp src/resources/particles/CParticleShaperMassRange.cpp src/resources/particles/CParticleAffector.cpp src/resources/particles/CParticleShaperRotationRange.cpp src/resources/CModelPVS.cpp src/resources/CImage.cpp src/resources/CMorphPose.cpp src/resources/CJoint.cpp src/resources/CMesh.cpp src/resources/CTextureRect.cpp src/resources/CResourceManager.cpp src/resources/CSkeletonJoint.cpp src/resources/CModelMeshEvent.cpp src/resources/CMorphAnimation.cpp src/resources/loaders/CImageLoaderHDRFactory.cpp src/resources/loaders/CImageLoaderWALFactory.cpp src/resources/loaders/CImageLoaderBMP.cpp src/resources/loaders/CResourceLoaderLFMFactory.cpp src/resources/loaders/CImageLoaderTGAFactory.cpp src/resources/loaders/CFLACLoaderFactory.cpp src/resources/loaders/CImageLoaderPNG.cpp src/resources/loaders/CParticleSystemWriterFactory.cpp src/resources/loaders/COggVorbisLoaderFactory.cpp src/resources/loaders/CModelWriterLFMFactory.cpp src/resources/loaders/CImageLoaderDDSFactory.cpp src/resources/loaders/CImageLoaderPSD.cpp src/resources/loaders/CImageLoaderPCXFactory.cpp src/resources/loaders/CModelWriterLFM.cpp src/resources/loaders/CModelPVSWriter.cpp src/resources/loaders/CLFMParserNGPlant.cpp src/resources/loaders/CImageLoaderDDS.cpp src/resources/loaders/CImageLoaderJPG.cpp src/resources/loaders/CGeometryLoaderLFMGFactory.cpp src/resources/loaders/CLFMParserParticleSystem.cpp src/resources/loaders/CModelPVSWriterFactory.cpp src/resources/loaders/CLFMParserGUITheme.cpp src/resources/loaders/CImageLoaderPSDFactory.cpp src/resources/loaders/CResourceLoaderLFM.cpp src/resources/loaders/CGeometryLoaderLFMG.cpp src/resources/loaders/CImageWriterBMP.cpp src/resources/loaders/CParticleSystemWriter.cpp src/resources/loaders/CImageWriterTGAFactory.cpp src/resources/loaders/CImageWriterPNG.cpp src/resources/loaders/CImageLoaderPNGFactory.cpp src/resources/loaders/CFontLoaderTTF.cpp src/resources/loaders/CImageLoaderBMPFactory.cpp src/resources/loaders/CImageLoaderTGA.cpp src/resources/loaders/CImageLoaderJPGFactory.cpp src/resources/loaders/COggVorbisLoader.cpp src/resources/loaders/CFLACLoader.cpp src/resources/loaders/CImageLoaderHDR.cpp src/resources/loaders/CFontLoaderTTFFactory.cpp src/resources/loaders/CImageWriterPNGFactory.cpp src/resources/loaders/CImageLoaderWAL.cpp src/resources/loaders/CImageWriterTGA.cpp src/resources/loaders/CImageWriterBMPFactory.cpp src/resources/loaders/CImageLoaderPCX.cpp src/resources/CMaterial.cpp src/resources/basicmodels/CConeModel.cpp src/resources/basicmodels/CTextModel.cpp src/resources/basicmodels/CPointModel.cpp src/resources/basicmodels/CPointCubeModel.cpp src/resources/basicmodels/CTorusModel.cpp src/resources/basicmodels/CCubeModel.cpp src/resources/basicmodels/CCylinderModel.cpp src/resources/basicmodels/CLineCubeModel.cpp src/resources/basicmodels/CBillboardModel.cpp src/resources/basicmodels/CCappedCylinderModel.cpp src/resources/basicmodels/CDecalModel.cpp src/resources/basicmodels/CSphereModel.cpp src/resources/basicmodels/CLineModel.cpp src/resources/basicmodels/CPlaneModel.cpp src/resources/CFont.cpp src/resources/CTextureCube.cpp src/resources/CAnimationEvent.cpp src/resources/CColorMaterial.cpp src/resources/CAnimation.cpp src/resources/nature/CWaterSimulator.cpp src/resources/nature/CSkyDomeModel.cpp src/resources/nature/CNGPlantFactory.cpp src/resources/nature/CTerrainTileHandler.cpp src/resources/nature/CNGPlantModel.cpp src/resources/nature/CWindGenerator.cpp src/resources/nature/CSkyBoxModel.cpp src/resources/nature/CTerrainTileModel.cpp src/resources/nature/CTerrainTileEvent.cpp src/resources/nature/CStaticTerrainModel.cpp src/resources/nature/CGeoMipMapTerrainModel.cpp src/resources/nature/CLargeTerrainModel.cpp src/resources/nature/CLargeTerrainTreeNode.cpp src/resources/CFontAlphabetAscii.cpp src/resources/CInstancedModel.cpp src/resources/procedural/CProcTexContrast.cpp src/resources/procedural/CFieldNoise.cpp src/resources/procedural/CProcTexUnion.cpp src/resources/procedural/CProcTexScale.cpp src/resources/procedural/CProcTexAlpha.cpp src/resources/procedural/CProcTexColorRange.cpp src/resources/procedural/CImageUtils.cpp src/resources/procedural/CFieldSphere.cpp src/resources/procedural/CField.cpp src/resources/procedural/CProcTexSolidColor.cpp src/resources/procedural/CProcTexNoise.cpp src/resources/procedural/CProcTexTurbulence.cpp src/resources/procedural/CMtVoxelBox.cpp src/resources/procedural/CProcTexConvolution.cpp src/resources/procedural/CProcTexTint.cpp src/resources/procedural/CMtVoxelMesh.cpp src/resources/CSkeletalAnimation.cpp src/resources/CVertexBuffer.cpp src/resources/CVertexBufferI.cpp src/resources/CTexture2D.cpp src/resources/CResourceWriter.cpp src/resources/CTexture.cpp src/resources/CTexture3D.cpp src/resources/CFontAlphabetDynamic.cpp src/resources/CIndexBuffer.cpp src/resources/CResourceRegisterEvent.cpp src/resources/CVertexFormatDefinition.cpp src/resources/CFontAlphabetCyrillic.cpp src/resources/CResource.cpp src/resources/CVertexBufferNI.cpp src/resources/CAnimatedTexture.cpp src/resources/CSkeleton.cpp src/resources/CModelAnimatorEvent.cpp src/resources/CSoundSource.cpp src/LfMain.cpp ) # Compile Lightfeather library ADD_LIBRARY( Lightfeather SHARED ${LF_SRC} ) # Link Lightfeather library TARGET_LINK_LIBRARIES( Lightfeather opengl32 glu32 # Xxf86vm ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${ZLIB_LIBRARIES} ${JPEG_LIBRARIES} ) # ================================ Tests =============================== IF(BUILD_TESTS) FOREACH(TEST_DIR 001.Mixed 002.ParticleSystems 003.GeoMipTerrain 004.GUI 005.LOD 006.Scenenode-controllers 007.Procedural 008.Portals 009.Multi-windows 010.Picking 011.Shaders 012.Treemodel 013.Largeterrain 014.Network 015.Paging 016.Texture3D 017.Threading 018.Sound 101.SimpleOppl 102.TerrainSkyTrees 103.NormalParallax 104.Instancing # 105.Deferred ) # All *.cpp files in the TEST_DIR are the sources SET(TEST_SRC) AUX_SOURCE_DIRECTORY( "examples/tests/${TEST_DIR}" TEST_SRC ) # Compile ADD_EXECUTABLE(test${TEST_DIR} ${TEST_SRC}) # Link TARGET_LINK_LIBRARIES(test${TEST_DIR} Lightfeather) ENDFOREACH(TEST_DIR) ENDIF(BUILD_TESTS) # ============================== Tutorials ============================= IF(BUILD_TUTORIALS) FOREACH(TUT_DIR 01.Basics 02.GUI-basics 03.Scenenode-Controllers 04.Internal-models 05.Billboards 06.Skybox-Skydome 07.Materials-1 08.Custom-model 09.Model-loading 10.ParticleSystems 11.Lighting 12.Materials-2 13.MeshManipulation 14.Manual-morph-animation 15.Picking 16.Cameras 17.Logging 18.MRT 19.HDR 20.GUI-advanced 21.Shadowmapping 22.Dynamic-Cubemapping 23.Oppl-1 ) SET(TUT_SRC) # All *.cpp files in the TEST_DIR are the sources AUX_SOURCE_DIRECTORY( "examples/tutorials/${TUT_DIR}" TUT_SRC ) # Compile ADD_EXECUTABLE(tut${TUT_DIR} ${TUT_SRC}) # Link TARGET_LINK_LIBRARIES(tut${TUT_DIR} Lightfeather) ENDFOREACH(TUT_DIR) ENDIF(BUILD_TUTORIALS)