From 69b6f46c96bf6c541f7a371ed117cc16131b6f4e Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Tue, 16 Jun 2020 20:20:37 -0300 Subject: [PATCH] oniguruma: build using autotools Cmake currently fails to compile properly. While there's a fix upstream, we can avoid carrying any patches here, and use the more stable build system, despite being slower. Signed-off-by: Eneas U de Queiroz --- libs/oniguruma/Makefile | 13 ++++--- ...ION-info-to-library-when-using-cmake.patch | 35 ------------------- .../0002-i_free_callout_name_entry.patch | 13 ------- 3 files changed, 9 insertions(+), 52 deletions(-) delete mode 100644 libs/oniguruma/patches/0001-Add-SOVERSION-info-to-library-when-using-cmake.patch delete mode 100644 libs/oniguruma/patches/0002-i_free_callout_name_entry.patch diff --git a/libs/oniguruma/Makefile b/libs/oniguruma/Makefile index 93088f02fe..62b325ee84 100644 --- a/libs/oniguruma/Makefile +++ b/libs/oniguruma/Makefile @@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=oniguruma PKG_VERSION:=6.9.5_rev1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=onig-v$(subst _,-,$(PKG_VERSION)).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/kkos/oniguruma/tar.gz/v$(PKG_VERSION)? @@ -21,10 +21,8 @@ PKG_INSTALL:=1 PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/cmake.mk -CMAKE_INSTALL:=1 -CMAKE_OPTIONS += -DENABLE_POSIX_API:BOOL=ON +CONFIGURE_ARGS += --enable-posix-api define Package/oniguruma SECTION:=libs @@ -47,4 +45,11 @@ define Package/oniguruma/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libonig.so.$(ABI_VERSION) $(1)/usr/lib/ endef +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/{include,lib} + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/ + $(SED) 's,/usr,$(STAGING_DIR)/usr,g' $(1)/usr/lib/pkgconfig/oniguruma.pc +endef + $(eval $(call BuildPackage,oniguruma)) diff --git a/libs/oniguruma/patches/0001-Add-SOVERSION-info-to-library-when-using-cmake.patch b/libs/oniguruma/patches/0001-Add-SOVERSION-info-to-library-when-using-cmake.patch deleted file mode 100644 index 1978f41872..0000000000 --- a/libs/oniguruma/patches/0001-Add-SOVERSION-info-to-library-when-using-cmake.patch +++ /dev/null @@ -1,35 +0,0 @@ -From afb2a1587a828bf7cd7ddd87b2e2609a9bb7fab0 Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Wed, 6 May 2020 08:59:54 -0300 -Subject: [PATCH] Add SOVERSION info to library when using cmake - -Currently the SOVERSION is different when building with cmake than the -value used by autotools. -This adds the version information from autotools to cmake. - -Signed-off-by: Eneas U de Queiroz - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 29a1417..1c8a090 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -67,6 +67,19 @@ target_include_directories(onig PUBLIC - target_compile_definitions(onig PUBLIC - $<$>:ONIG_STATIC>) - -+if(BUILD_SHARED_LIBS) -+ # Parse SOVERSION information from LTVERSION in configure.ac -+ file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/configure.ac" LTVERSION REGEX "^LTVERSION *= *\"?[0-9]+:[0-9]+:[0-9]+\"?") -+ string(REGEX REPLACE "^LTVERSION *= *\"?([0-9]+:[0-9]+:[0-9]+)\"?.*$" "\\1" LTVERSION "${LTVERSION}") -+ string(REGEX REPLACE "^([0-9]+):([0-9]+):([0-9]+)" "\\1" LTCURRENT ${LTVERSION}) -+ string(REGEX REPLACE "^([0-9]+):([0-9]+):([0-9]+)" "\\2" LTREVISION ${LTVERSION}) -+ string(REGEX REPLACE "^([0-9]+):([0-9]+):([0-9]+)" "\\3" LTAGE ${LTVERSION}) -+ math(EXPR ONIG_SOVERSION "${LTCURRENT} - ${LTAGE}") -+ set_target_properties(onig PROPERTIES -+ SOVERSION "${ONIG_SOVERSION}" -+ VERSION "${ONIG_SOVERSION}.${LTAGE}.${LTREVISION}") -+endif() -+ - if(MSVC) - target_compile_options(onig PRIVATE - #/W4 diff --git a/libs/oniguruma/patches/0002-i_free_callout_name_entry.patch b/libs/oniguruma/patches/0002-i_free_callout_name_entry.patch deleted file mode 100644 index f67a00cff1..0000000000 --- a/libs/oniguruma/patches/0002-i_free_callout_name_entry.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/src/regparse.c 2020-04-26 09:20:56.000000000 +0200 -+++ b/src/regparse.c 2020-06-14 21:22:18.396966276 +0200 -@@ -1294,7 +1294,9 @@ - i_free_callout_name_entry(st_callout_name_key* key, CalloutNameEntry* e, - void* arg ARG_UNUSED) - { -- xfree(e->name); -+ if (IS_NOT_NULL(e)) { -+ xfree(e->name); -+ } - /*xfree(key->s); */ /* is same as e->name */ - xfree(key); - xfree(e); -- 2.30.2