summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernd Kuhls <bernd.kuhls@t-online.de>2019-09-21 21:28:02 +0200
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>2019-09-21 22:59:07 +0200
commit3c4ff8467df1ed512bf6286f019ec611370814aa (patch)
treece121d6d1c9b9b78b3a2295c2969c80cbeef5f61
parent6ab4e71a4027370c49a31220bbf2c8a51a1a5f1b (diff)
package/fstrcmp: new package
Needed for Kodi >= 18.0 https://github.com/xbmc/xbmc/commit/c79fb23a7d7b8550f236ecbc9d3f0af4e57365e4 Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
-rw-r--r--DEVELOPERS1
-rw-r--r--package/Config.in1
-rw-r--r--package/fstrcmp/0001-disable-rpath.patch25
-rw-r--r--package/fstrcmp/Config.in12
-rw-r--r--package/fstrcmp/fstrcmp.hash6
-rw-r--r--package/fstrcmp/fstrcmp.mk31
6 files changed, 76 insertions, 0 deletions
diff --git a/DEVELOPERS b/DEVELOPERS
index 77fa95210c..92e5058e9d 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -305,6 +305,7 @@ F: package/flac/
F: package/freeswitch/
F: package/freeswitch-mod-bcg729/
F: package/freetype/
+F: package/fstrcmp/
F: package/ghostscript/
F: package/giflib/
F: package/gli/
diff --git a/package/Config.in b/package/Config.in
index 23efe9394f..f71e155faf 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1796,6 +1796,7 @@ menu "Text and terminal handling"
source "package/augeas/Config.in"
source "package/enchant/Config.in"
source "package/fmt/Config.in"
+ source "package/fstrcmp/Config.in"
source "package/icu/Config.in"
source "package/libcli/Config.in"
source "package/libedit/Config.in"
diff --git a/package/fstrcmp/0001-disable-rpath.patch b/package/fstrcmp/0001-disable-rpath.patch
new file mode 100644
index 0000000000..cec57e7e94
--- /dev/null
+++ b/package/fstrcmp/0001-disable-rpath.patch
@@ -0,0 +1,25 @@
+Remove rpath from linking command
+
+Fixes build error:
+
+lib/.libs/libfstrcmp.so: undefined reference to `__ctype_b_loc@GLIBC_2.3'
+lib/.libs/libfstrcmp.so: undefined reference to `mbstowcs@GLIBC_2.2.5'
+lib/.libs/libfstrcmp.so: undefined reference to `printf@GLIBC_2.2.5'
+lib/.libs/libfstrcmp.so: undefined reference to `readlink@GLIBC_2.2.5'
+lib/.libs/libfstrcmp.so: undefined reference to `malloc@GLIBC_2.2.5'
+lib/.libs/libfstrcmp.so: undefined reference to `memcmp@GLIBC_2.2.5'
+lib/.libs/libfstrcmp.so: undefined reference to `wcslen@GLIBC_2.2.5'
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+--- fstrcmp-0.7.D001/Makefile.in.orig 2014-03-05 01:13:45.000000000 +0100
++++ fstrcmp-0.7.D001/Makefile.in 2019-04-07 13:55:07.817689231 +0200
+@@ -507,7 +507,7 @@
+ lib/libfstrcmp.la: $(lib_obj)
+ rm -f $@
+ $(LIBTOOL) --mode=link --tag=CC $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) \
+- -o $@ $(lib_obj) $(LIBS) -rpath $(libdir) -version-info 6:0:6
++ -o $@ $(lib_obj) $(LIBS) -version-info 6:0:6
+
+ #
+ # The install of the *.la file automatically causes "$(LIBTOOL) --mode=install"
diff --git a/package/fstrcmp/Config.in b/package/fstrcmp/Config.in
new file mode 100644
index 0000000000..04f11b0f97
--- /dev/null
+++ b/package/fstrcmp/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_FSTRCMP
+ bool "fstrcmp"
+ depends on BR2_USE_WCHAR
+ help
+ The fstrcmp project provides a library that is used to make
+ fuzzy comparisons of strings and byte arrays, including multi-
+ byte character strings.
+
+ http://fstrcmp.sourceforge.net/
+
+comment "fstrcmp needs a toolchain w/ wchar"
+ depends on !BR2_USE_WCHAR
diff --git a/package/fstrcmp/fstrcmp.hash b/package/fstrcmp/fstrcmp.hash
new file mode 100644
index 0000000000..9a43c59c09
--- /dev/null
+++ b/package/fstrcmp/fstrcmp.hash
@@ -0,0 +1,6 @@
+# From https://sourceforge.net/projects/fstrcmp/files/fstrcmp/0.7/
+md5 9c440bbdfcad9fd22e38f2388715b0cc fstrcmp-0.7.D001.tar.gz
+sha1 bb848118fb157dc624ae9fac0566a64cc85f2ef2 fstrcmp-0.7.D001.tar.gz
+# Locally computed
+sha256 e4018e850f80700acee8da296e56e15b1eef711ab15157e542e7d7e1237c3476 fstrcmp-0.7.D001.tar.gz
+sha256 5352e426b563eda9252d76be92337b49f7b5cfdd1302a1e8d99389840c0e46be LICENSE
diff --git a/package/fstrcmp/fstrcmp.mk b/package/fstrcmp/fstrcmp.mk
new file mode 100644
index 0000000000..9c42159afb
--- /dev/null
+++ b/package/fstrcmp/fstrcmp.mk
@@ -0,0 +1,31 @@
+################################################################################
+#
+# fstrcmp
+#
+################################################################################
+
+FSTRCMP_VERSION_MAJOR = 0.7
+FSTRCMP_VERSION = $(FSTRCMP_VERSION_MAJOR).D001
+FSTRCMP_SITE = https://sourceforge.net/projects/fstrcmp/files/fstrcmp/$(FSTRCMP_VERSION_MAJOR)
+FSTRCMP_LICENSE = GPL-3.0+
+FSTRCMP_LICENSE_FILES = LICENSE
+FSTRCMP_INSTALL_STAGING = YES
+FSTRCMP_DEPENDENCIES = host-libtool
+FSTRCMP_CONF_ENV = LIBTOOL="$(HOST_DIR)/bin/libtool"
+
+FSTRCMP_MAKE_OPTS = all-bin libdir/pkgconfig/fstrcmp.pc
+
+# We need to install the package files ourselves due to upstream trying
+# to install a .lai file which is missing because of rpath removal
+define FSTRCMP_INSTALL_STAGING_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install-include
+ $(INSTALL) -D -m 755 $(@D)/lib/.libs/libfstrcmp.a $(STAGING_DIR)/usr/lib/libfstrcmp.a
+ $(INSTALL) -D -m 755 $(@D)/lib/libfstrcmp.la $(STAGING_DIR)/usr/lib/libfstrcmp.la
+ $(INSTALL) -D -m 755 $(@D)/libdir/pkgconfig/fstrcmp.pc $(STAGING_DIR)/usr/lib/pkgconfig/fstrcmp.pc
+endef
+
+define FSTRCMP_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 755 $(@D)/bin/fstrcmp $(TARGET_DIR)/usr/bin/fstrcmp
+endef
+
+$(eval $(autotools-package))