From d9ccc9fbce597bdd9b6ccab96fabc7b2c674c00b Mon Sep 17 00:00:00 2001 From: Sylvain Becker Date: Tue, 13 Aug 2019 15:49:01 +0200 Subject: [PATCH] Android: add compilation with cmake (see bug 3918) --- CMakeLists.txt | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..a8eb3c25 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,49 @@ +cmake_minimum_required(VERSION 3.0) +project(SDL_image C) + + +if (ANDROID) + + option(SUPPORT_JPG "Support loading JPEG images" OFF) + option(SUPPORT_PNG "Support loading PNG images" ON) + option(SUPPORT_WEBP "Support loading WEBP images" OFF) + + add_library(SDL_image SHARED) + target_sources(SDL_image PRIVATE IMG.c IMG_png.c IMG_bmp.c IMG_gif.c + IMG_jpg.c IMG_lbm.c IMG_pcx.c IMG_pnm.c IMG_svg.c IMG_tga.c + IMG_tif.c IMG_webp.c IMG_WIC.c IMG_xcf.c IMG_xpm.c IMG_xv.c IMG_xxx.c) + + add_definitions( + -DLOAD_BMP -DLOAD_GIF -DLOAD_LBM -DLOAD_PCX -DLOAD_PNM + -DLOAD_TGA -DLOAD_XCF -DLOAD_XPM -DLOAD_XV -DLOAD_XPM) + + if (SUPPORT_JPG) + add_definitions(-DLOAD_JPG) + # missing CMakeFiles + add_subdirectory(external/jpeg-9b) + + target_link_libraries(SDL_image PRIVATE jpeg) + endif() + + if (SUPPORT_PNG) + # missing libpng.vers + set(HAVE_LD_VERSION_SCRIPT OFF CACHE BOOL "" FORCE) + add_definitions(-DLOAD_PNG) + + add_subdirectory(external/libpng-1.6.37) + include_directories(external/libpng-1.6.37) + target_link_libraries(SDL_image PRIVATE png) + endif() + + if (SUPPORT_WEBP) + add_definitions(-DLOAD_WEBP) + # missing cpufeatures + add_subdirectory(external/libwebp-1.0.2) + target_link_libraries(SDL_image PRIVATE webp) + endif() + + target_link_libraries(SDL_image PRIVATE SDL2) +else() + +endif() +