libsuperderpy/src/CMakeLists.txt

77 lines
2.8 KiB
Text
Raw Normal View History

2012-08-19 03:04:55 +02:00
SET(SRC_LIST
character.c
config.c
gamestate.c
internal.c
libsuperderpy.c
2018-09-10 03:18:52 +02:00
mainloop.c
maths.c
2018-11-26 09:18:28 +01:00
particle.c
shader.c
timeline.c
tween.c
utils.c
)
if (EMSCRIPTEN)
list(APPEND SRC_LIST emscripten-audio-stream.c)
endif()
2016-06-27 21:20:02 +02:00
if (LIBSUPERDERPY_EMBEDDED_ALLEGRO)
set(SHARED OFF) # Allegro doesn't namespace this...
add_subdirectory("3rdparty/allegro5" EXCLUDE_FROM_ALL)
set_property(TARGET "allegro" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_font" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_ttf" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_primitives" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_audio" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_acodec" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_image" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_color" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_video" PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET "allegro_main" PROPERTY POSITION_INDEPENDENT_CODE ON)
endif (LIBSUPERDERPY_EMBEDDED_ALLEGRO)
2018-11-29 04:37:08 +01:00
if (LIBSUPERDERPY_IMGUI)
set(IMGUI_STATIC ON CACHE STRING "" FORCE)
add_subdirectory(3rdparty/cimgui EXCLUDE_FROM_ALL)
set_property(TARGET "cimgui" PROPERTY POSITION_INDEPENDENT_CODE ON)
list(APPEND SRC_LIST imgui/imgui_impl_allegro5.c)
endif (LIBSUPERDERPY_IMGUI)
if (LIBSUPERDERPY_STATIC)
add_library("libsuperderpy" STATIC ${SRC_LIST})
2018-11-29 04:37:08 +01:00
set_property(TARGET "libsuperderpy" PROPERTY POSITION_INDEPENDENT_CODE ON)
else (LIBSUPERDERPY_STATIC)
add_library("libsuperderpy" SHARED ${SRC_LIST})
endif (LIBSUPERDERPY_STATIC)
2016-07-02 23:23:08 +02:00
SET_TARGET_PROPERTIES("libsuperderpy" PROPERTIES PREFIX "")
2012-08-19 03:04:55 +02:00
if (NOT LIBSUPERDERPY_STATIC_GAMESTATES)
if (WIN32 AND LIBSUPERDERPY_DLFCN)
set(BUILD_SHARED_LIBS OFF CACHE STRING "" FORCE)
add_subdirectory(3rdparty/dlfcn-win32 EXCLUDE_FROM_ALL)
set_property(TARGET "dl" PROPERTY POSITION_INDEPENDENT_CODE ON)
endif(WIN32 AND LIBSUPERDERPY_DLFCN)
target_link_libraries("libsuperderpy" dl)
endif()
target_link_libraries("libsuperderpy" ${ALLEGRO5_TTF_LIBRARIES} ${ALLEGRO5_FONT_LIBRARIES} ${ALLEGRO5_PRIMITIVES_LIBRARIES} ${ALLEGRO5_ACODEC_LIBRARIES} ${ALLEGRO5_AUDIO_LIBRARIES} ${ALLEGRO5_VIDEO_LIBRARIES} ${ALLEGRO5_COLOR_LIBRARIES} ${ALLEGRO5_IMAGE_LIBRARIES} ${ALLEGRO5_LIBRARIES} m)
2018-11-29 04:37:08 +01:00
if (LIBSUPERDERPY_IMGUI)
target_link_libraries("libsuperderpy" cimgui)
endif (LIBSUPERDERPY_IMGUI)
if (WIN32 AND LIBSUPERDERPY_DLFCN)
target_link_libraries("libsuperderpy" psapi)
endif (WIN32 AND LIBSUPERDERPY_DLFCN)
2018-11-02 06:07:49 +01:00
if (ANDROID)
target_link_libraries("libsuperderpy" log)
endif (ANDROID)
if (NOT LIBSUPERDERPY_STATIC)
install(TARGETS "libsuperderpy" DESTINATION ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX})
endif (NOT LIBSUPERDERPY_STATIC)