summaryrefslogtreecommitdiff
path: root/Ports
diff options
context:
space:
mode:
authorGunnar Beutner <gbeutner@serenityos.org>2021-05-08 05:23:29 +0200
committerAndreas Kling <kling@serenityos.org>2021-05-08 19:13:42 +0200
commit611019e938626f65d23b99fe4ea94b410c17f151 (patch)
treec54751ce86ad7be42b61d39b18a664d400c009fb /Ports
parent2f3ded4dfd590bee6f16ec349610f7da30994ae5 (diff)
downloadserenity-611019e938626f65d23b99fe4ea94b410c17f151.zip
Ports: Add port for harfbuzz
Diffstat (limited to 'Ports')
-rw-r--r--Ports/AvailablePorts.md1
-rwxr-xr-xPorts/harfbuzz/package.sh21
-rw-r--r--Ports/harfbuzz/patches/unused.patch12
3 files changed, 34 insertions, 0 deletions
diff --git a/Ports/AvailablePorts.md b/Ports/AvailablePorts.md
index d46212d50f..c6c45f02c9 100644
--- a/Ports/AvailablePorts.md
+++ b/Ports/AvailablePorts.md
@@ -38,6 +38,7 @@ Please make sure to keep this list up to date when adding and updating ports. :^
| [`gnupg`](gnupg/) | GnuPG | 2.3.0 | https://gnupg.org/software/index.html |
| [`gnuplot`](gnuplot/) | Gnuplot | 5.2.8 | http://www.gnuplot.info/ |
| [`grep`](grep/) | GNU Grep | 2.5.4 | https://www.gnu.org/software/grep/ |
+| [`harfbuzz`](harfbuzz/) | HarfBuzz | 2.8.1 | https://github.com/harfbuzz/harfbuzz |
| [`hatari`](hatari/) | Atari ST/STE/TT/Falcon emulator | 2.4.0-devel | https://hatari.tuxfamily.org/ |
| [`imgcat`](imgcat/) | imgcat | 2.5.0 | https://github.com/eddieantonio/imgcat |
| [`indent`](indent/) | GNU indent | 2.2.11 | https://www.gnu.org/software/indent/ |
diff --git a/Ports/harfbuzz/package.sh b/Ports/harfbuzz/package.sh
new file mode 100755
index 0000000000..40cf72d99e
--- /dev/null
+++ b/Ports/harfbuzz/package.sh
@@ -0,0 +1,21 @@
+#!/usr/bin/env -S bash ../.port_include.sh
+port=harfbuzz
+useconfigure=true
+version=2.8.1
+depends="freetype libicu"
+configopts="-DCMAKE_TOOLCHAIN_FILE=$SERENITY_SOURCE_DIR/Toolchain/CMake/CMakeToolchain.txt -DHB_HAVE_FREETYPE=ON -DHB_HAVE_ICU=ON"
+files="https://github.com/harfbuzz/harfbuzz/releases/download/${version}/harfbuzz-${version}.tar.xz harfbuzz-${version}.tar.xz 4124f663ec4bf4e294d9cf230668370b4249a48ff34deaf0f06e8fc82d891300"
+auth_type=sha256
+
+configure() {
+ run mkdir -p build
+ run sh -c "cd build && cmake $configopts .."
+}
+
+build() {
+ run sh -c "cd build && make $makeopts"
+}
+
+install() {
+ run sh -c "cd build && make install"
+}
diff --git a/Ports/harfbuzz/patches/unused.patch b/Ports/harfbuzz/patches/unused.patch
new file mode 100644
index 0000000000..f6d48ae3a2
--- /dev/null
+++ b/Ports/harfbuzz/patches/unused.patch
@@ -0,0 +1,12 @@
+diff -Naur harfbuzz-2.8.1/src/hb-buffer.hh harfbuzz-2.8.1.serenity/src/hb-buffer.hh
+--- harfbuzz-2.8.1/src/hb-buffer.hh 2021-05-04 02:09:38.000000000 +0200
++++ harfbuzz-2.8.1.serenity/src/hb-buffer.hh 2021-05-08 05:22:34.579810445 +0200
+@@ -166,7 +166,7 @@
+ #ifndef HB_NDEBUG
+ unsigned int end = start + count;
+ assert (end <= 8);
+- unsigned int bits = (1u<<end) - (1u<<start);
++ [[maybe_unused]] unsigned int bits = (1u<<end) - (1u<<start);
+ assert (bits == (allocated_var_bits & bits));
+ #endif
+ }