summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/libgrapheme/Manifest1
-rw-r--r--dev-libs/libgrapheme/files/libgrapheme-1-make.patch32
-rw-r--r--dev-libs/libgrapheme/libgrapheme-1.ebuild37
-rw-r--r--dev-libs/libgrapheme/metadata.xml8
4 files changed, 78 insertions, 0 deletions
diff --git a/dev-libs/libgrapheme/Manifest b/dev-libs/libgrapheme/Manifest
new file mode 100644
index 000000000000..3caacef0b4e6
--- /dev/null
+++ b/dev-libs/libgrapheme/Manifest
@@ -0,0 +1 @@
+DIST libgrapheme-1.tar.gz 67912 BLAKE2B 62e82018b2a45f7259811fbfbae45741252ffedafa095d8e373d62220fc50141afe359d171b723e007120ac307db540c03cfe6e60ecedf1eea0be5518caa9bcb SHA512 c0f3300d30707266e44ee01f359204720ae1770788cec509b03be914f8581caae144fb72952d111f108ebef21fd96b5ca2cf69463ee569bce4bba8645942ee05
diff --git a/dev-libs/libgrapheme/files/libgrapheme-1-make.patch b/dev-libs/libgrapheme/files/libgrapheme-1-make.patch
new file mode 100644
index 000000000000..363df6cfb51e
--- /dev/null
+++ b/dev-libs/libgrapheme/files/libgrapheme-1-make.patch
@@ -0,0 +1,32 @@
+Adjust config.mk variables, fix cross-compilation, and don't run ldconfig.
+--- a/Makefile
++++ b/Makefile
+@@ -68,3 +68,6 @@
+ $(GEN):
+- $(CC) -o $@ $(LDFLAGS) $@.o gen/util.o
++ $(BUILD_CC) -o $@ $(BUILD_LDFLAGS) $@.o gen/util.o
++
++gen/%.o:
++ $(BUILD_CC) -c -o $@ $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $<
+
+@@ -84,3 +87,3 @@
+ libgrapheme.so: $(SRC:=.o)
+- $(CC) -o $@ -shared $?
++ $(CC) -o $@ -shared $(LDFLAGS) $?
+
+@@ -99,3 +102,2 @@
+ cp -f grapheme.h "$(DESTDIR)$(INCPREFIX)"
+- ldconfig || true
+
+--- a/config.mk
++++ b/config.mk
+@@ -13,8 +13,4 @@
+ CPPFLAGS = -D_DEFAULT_SOURCE
+-CFLAGS = -std=c99 -Os -fPIC -Wall -Wextra -Wpedantic
+-LDFLAGS = -s
++CFLAGS := -std=c99 -fPIC -Wall -Wextra -Wpedantic $(CFLAGS)
+
+ # tools
+-CC = cc
+-AR = ar
+-RANLIB = ranlib
diff --git a/dev-libs/libgrapheme/libgrapheme-1.ebuild b/dev-libs/libgrapheme/libgrapheme-1.ebuild
new file mode 100644
index 000000000000..3217f024438d
--- /dev/null
+++ b/dev-libs/libgrapheme/libgrapheme-1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Unicode string library"
+HOMEPAGE="https://libs.suckless.org/libgrapheme/"
+SRC_URI="https://dl.suckless.org/libgrapheme/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-make.patch
+)
+
+src_configure() {
+ tc-export CC AR RANLIB
+ tc-export_build_env BUILD_CC # see make.patch
+
+ append-ldflags -Wl,--soname=${PN}.so
+}
+
+src_install() {
+ local emakeargs=(
+ DESTDIR="${D}"
+ PREFIX="${EPREFIX}"/usr
+ LIBPREFIX="${EPREFIX}"/usr/$(get_libdir)
+ )
+ emake "${emakeargs[@]}" install
+ einstalldocs
+
+ rm "${ED}"/usr/$(get_libdir)/${PN}.a || die
+}
diff --git a/dev-libs/libgrapheme/metadata.xml b/dev-libs/libgrapheme/metadata.xml
new file mode 100644
index 000000000000..06d84e396dc3
--- /dev/null
+++ b/dev-libs/libgrapheme/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ionen@gentoo.org</email>
+ <name>Ionen Wolkens</name>
+ </maintainer>
+</pkgmetadata>