# Open Asset Import Library (assimp) # ---------------------------------------------------------------------- # # Copyright (c) 2006-2022, assimp team # All rights reserved. # # Redistribution and use of this software in source and binary forms, # with or without modification, are permitted provided that the # following conditions are met: # # * Redistributions of source code must retain the above # copyright notice, this list of conditions and the # following disclaimer. # # * Redistributions in binary form must reproduce the above # copyright notice, this list of conditions and the # following disclaimer in the documentation and/or other # materials provided with the distribution. # # * Neither the name of the assimp team, nor the names of its # contributors may be used to endorse or promote products # derived from this software without specific prior # written permission of the assimp team. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # #---------------------------------------------------------------------- cmake_minimum_required( VERSION 3.10 ) INCLUDE_DIRECTORIES ( ${Assimp_SOURCE_DIR}/include ${Assimp_SOURCE_DIR}/code ${DirectX_INCLUDE_DIR} ) # Make sure the linker can find the Assimp library once it is built. LINK_DIRECTORIES (${Assimp_BINARY_DIR} ${AssetImporter_BINARY_DIR}/lib) ADD_EXECUTABLE( assimp_viewer WIN32 AnimEvaluator.cpp Background.cpp Display.cpp HelpDialog.cpp Input.cpp LogDisplay.cpp LogWindow.cpp Material.cpp MeshRenderer.cpp MessageProc.cpp Normals.cpp SceneAnimator.cpp Shaders.cpp assimp_view.h AnimEvaluator.h SceneAnimator.h MaterialManager.h AssetHelper.h assimp_view.cpp stdafx.cpp assimp_view.rc banner.bmp banner_pure.bmp base_anim.bmp base_display.bmp base_inter.bmp base_rendering.bmp base_stats.bmp fx.bmp n.bmp root.bmp tx.bmp txi.bmp ) TARGET_USE_COMMON_OUTPUT_DIRECTORY(assimp_viewer) SET_PROPERTY(TARGET assimp_viewer PROPERTY DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX}) IF ( MSVC ) ADD_DEFINITIONS( -D_SCL_SECURE_NO_WARNINGS ) ADD_DEFINITIONS( -D_CRT_SECURE_NO_WARNINGS ) # assimp_viewer is ANSI (MBCS) throughout REMOVE_DEFINITIONS( -DUNICODE -D_UNICODE ) ENDIF () IF (ASSIMP_WARNINGS_AS_ERRORS) IF (MSVC) TARGET_COMPILE_OPTIONS(assimp_viewer PRIVATE /W4 /WX) ELSE() TARGET_COMPILE_OPTIONS(assimp_viewer PRIVATE -Wall -Werror) ENDIF() ENDIF() # Link the executable to the assimp + dx libs. TARGET_LINK_LIBRARIES ( assimp_viewer assimp ${DirectX_LIBRARY} ${DirectX_D3DX9_LIBRARY} comctl32 winmm ) INSTALL( TARGETS assimp_viewer DESTINATION "${ASSIMP_BIN_INSTALL_DIR}" COMPONENT assimp-dev )