diff --git a/Makefile.third b/Makefile.third index f20ddc7a0..a1bb3cbbb 100644 --- a/Makefile.third +++ b/Makefile.third @@ -91,7 +91,6 @@ $(GIF_LIB): $(THIRDPARTY_DIR)/giflib/CMakeLists.txt cd $(GIF_BUILD_DIR) && \ $(CMAKE) -DCC="$(CC) $(if $(ANDROID),-DS_IREAD=S_IRUSR -DS_IWRITE=S_IWUSR,)" \ -DCFLAGS="$(CFLAGS)" -DLDFLAGS="$(LDFLAGS)" -DCHOST="$(CHOST)" \ - $(if $(ANDROID),-DIS_ANDROID:BOOL=on,) \ $(CURDIR)/thirdparty/giflib && \ $(MAKE) cp -fL $(GIF_DIR)/lib/$(notdir $(GIF_LIB)) $@ @@ -221,7 +220,6 @@ $(LIBGETTEXT): $(LIBICONV) $(THIRDPARTY_DIR)/gettext/CMakeLists.txt cd $(GETTEXT_BUILD_DIR) && \ $(CMAKE) -DCC="$(CC) -std=gnu89" -DLIBICONV_PREFIX=$(LIBICONV_DIR) \ -DCHOST_OPTS="$(if $(EMULATE_READER),,--host=$(if $(ANDROID),arm-linux,$(CHOST)))" \ - $(if $(ANDROID),-DIS_ANDROID:BOOL=on,) \ $(if $(ANDROID),-DNDK=$(NDK),) \ $(if $(ANDROID),-DNDKABI=$(NDKABI),) \ $(CURDIR)/thirdparty/gettext && \ diff --git a/thirdparty/czmq/CMakeLists.txt b/thirdparty/czmq/CMakeLists.txt index 9566c6704..96c617ae3 100644 --- a/thirdparty/czmq/CMakeLists.txt +++ b/thirdparty/czmq/CMakeLists.txt @@ -21,6 +21,10 @@ set(CFG_ENV_VAR "CC=\"${CC}\" LDFLAGS=\"${LDFLAGS}\" CFLAGS=\"-Wno-error ${CFLAG set(CFG_OPTS "-q --prefix=${BINARY_DIR} --with-gnu-ld --with-libzmq=${ZMQ_DIR} --disable-static --enable-shared --host=${HOST}") set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") +if($ENV{ANDROID}) + set(CFG_CMD "${CFG_CMD} && ${ISED} 's|\${shared_ext}\\\\\$major|\${shared_ext}|' libtool") +endif() + # hack to remove hardcoded rpath set(SED_CMD1 sh -c "${ISED} 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=\"\"|g' libtool") set(SED_CMD2 sh -c "${ISED} 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool") diff --git a/thirdparty/freetype2/CMakeLists.txt b/thirdparty/freetype2/CMakeLists.txt index cef1475fe..f7c78b80f 100644 --- a/thirdparty/freetype2/CMakeLists.txt +++ b/thirdparty/freetype2/CMakeLists.txt @@ -18,6 +18,10 @@ set(CFG_ENV_VAR "CC=\"${CC}\" CXX=\"${CXX}\" CFLAGS=\"${CFLAGS}\" CXXFLAGS=\"${C set(CFG_OPTS "-q --prefix=${BINARY_DIR} --disable-static --enable-shared --with-zlib=no --with-bzip2=no --with-png=no --with-harfbuzz=no --host=\"${CHOST}\"") set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") +if($ENV{ANDROID}) + set(CFG_CMD "${CFG_CMD} && ${ISED} 's|\${shared_ext}\\\\\$major|\${shared_ext}|' libtool") +endif() + ko_write_gitclone_script( GIT_CLONE_SCRIPT_FILENAME https://gitlab.com/koreader/freetype2.git diff --git a/thirdparty/gettext/CMakeLists.txt b/thirdparty/gettext/CMakeLists.txt index cac3622ca..6c33553b8 100644 --- a/thirdparty/gettext/CMakeLists.txt +++ b/thirdparty/gettext/CMakeLists.txt @@ -13,7 +13,7 @@ ep_get_source_dir(SOURCE_DIR) ep_get_binary_dir(BINARY_DIR) set(CFG_ENV_VAR "CC=\"${CC}\"") -if(${IS_ANDROID}) +if($ENV{ANDROID}) # workaround of 'undefined reference to getdtablesize' for NDK-r11c set(CFG_ENV_VAR "${CFG_ENV_VAR} LDFLAGS=-lc LIBS=${NDK}/platforms/android-${NDKABI}/arch-arm/usr/lib/libc.a") endif() @@ -21,8 +21,9 @@ set(CFG_OPTS "--with-threads=none --disable-acl --disable-curses --disable-openm set(CFG_OPTS "${CFG_OPTS} --prefix=${BINARY_DIR} --with-libiconv-prefix=${LIBICONV_PREFIX}") set(CFG_OPTS "${CFG_OPTS} --enable-shared=false --enable-static=true ${CHOST_OPTS}") set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") + # remove HAVE_PWD_H for android build -if(${IS_ANDROID}) +if($ENV{ANDROID}) set(CFG_CMD "${CFG_CMD} && ${ISED} \"s|#define HAVE_PWD_H 1||\" gettext-tools/config.h") endif() diff --git a/thirdparty/giflib/CMakeLists.txt b/thirdparty/giflib/CMakeLists.txt index 1b5fa5c9b..b38e90cd9 100644 --- a/thirdparty/giflib/CMakeLists.txt +++ b/thirdparty/giflib/CMakeLists.txt @@ -13,9 +13,11 @@ ep_get_binary_dir(BINARY_DIR) set(CFG_ENV_VAR "CC=\"${CC}\" CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" ") set(CFG_OPTS "-q --prefix=${BINARY_DIR} --disable-static --enable-shared --host=\"${CHOST}\"") set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") + # use limits.h instead of stdint.h for android build -if(${IS_ANDROID}) +if($ENV{ANDROID}) set(CFG_CMD "${CFG_CMD} && ${ISED} \"s|stdint.h|limits.h|g\" ${SOURCE_DIR}/lib/openbsd-reallocarray.c") + set(CFG_CMD "${CFG_CMD} && ${ISED} 's|\${shared_ext}\\\\\$major|\${shared_ext}|' libtool") endif() ko_write_gitclone_script( diff --git a/thirdparty/libjpeg-turbo/CMakeLists.txt b/thirdparty/libjpeg-turbo/CMakeLists.txt index e94d382b1..3b3cd417c 100644 --- a/thirdparty/libjpeg-turbo/CMakeLists.txt +++ b/thirdparty/libjpeg-turbo/CMakeLists.txt @@ -22,6 +22,10 @@ if(${WITHOUT_SIMD}) endif(${WITHOUT_SIMD}) set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") +if($ENV{ANDROID}) + set(CFG_CMD "${CFG_CMD} && ${ISED} 's|\${shared_ext}\\\\\$major|\${shared_ext}|' libtool") +endif() + ko_write_gitclone_script( GIT_CLONE_SCRIPT_FILENAME https://github.com/libjpeg-turbo/libjpeg-turbo.git diff --git a/thirdparty/libpng/CMakeLists.txt b/thirdparty/libpng/CMakeLists.txt index 68c45c0e4..dfc908b2b 100644 --- a/thirdparty/libpng/CMakeLists.txt +++ b/thirdparty/libpng/CMakeLists.txt @@ -17,6 +17,10 @@ set(CFG_ENV_VAR "CC=\"${CC}\" CXX=\"${CXX}\" CPPFLAGS=\"${CPPFLAGS}\" LDFLAGS=\" set(CFG_OPTS "-q --prefix=${BINARY_DIR} --disable-static --enable-shared --host=\"${CHOST}\"") set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") +if($ENV{ANDROID}) + set(CFG_CMD "${CFG_CMD} && ${ISED} 's|\${shared_ext}\\\\\$major|\${shared_ext}|' libtool") +endif() + ko_write_gitclone_script( GIT_CLONE_SCRIPT_FILENAME https://github.com/glennrp/libpng.git diff --git a/thirdparty/libzmq/CMakeLists.txt b/thirdparty/libzmq/CMakeLists.txt index ed5ca2601..ef0b6fa44 100644 --- a/thirdparty/libzmq/CMakeLists.txt +++ b/thirdparty/libzmq/CMakeLists.txt @@ -29,6 +29,10 @@ endif(${LEGACY}) set(CFG_CMD sh -c "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}") set(PATCH_CMD sh -c "${ISED} \"s|-lstdc++||g\" libtool") +if($ENV{ANDROID}) + set(PATCH_CMD "${PATCH_CMD} && ${ISED} 's|\${shared_ext}\\\\\$major|\${shared_ext}|' libtool") +endif() + set(FORCE_DYNAMLIB_VERSION sed -i "s|-avoid-version||g" src/Makefile.am) set(SKIP_TEST sed -i "s|tests||g" Makefile.am) # clear build dir every time so make install won't fail