diff --git a/media-gfx/fontforge/additional-files/fontforge.rdef.in b/media-gfx/fontforge/additional-files/fontforge.rdef.in new file mode 100644 index 000000000..344211c26 --- /dev/null +++ b/media-gfx/fontforge/additional-files/fontforge.rdef.in @@ -0,0 +1,46 @@ + +resource app_flags B_MULTIPLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + variety = B_APPV_FINAL, + internal = 0, + short_info = "An outline font editor", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource vector_icon { + $"6E636966010500050606FF07C3F0C9AEC3F0C9AEC3F0C9C8C3F0C9FCC3F0C9E2" + $"C58DC9FCC8C6C9FCC72AC9FCC8C6C9E2C8C6C9AEC8C6C9C8C72AC9AEC3F0C9AE" + $"C58DC9AEC3F0C9AEC9AE020E53BB4653BB46C70CBC1FC681BDD3C6C6BCF9C6AF" + $"BDD3C70BBDD3C6DDBDD3C70BC089C70BC5F6C70BC340C70BC65AC70BC722C70B" + $"C6BEC6DDC722C681C722C6AFC722C6C6C7FA53C9ACC70CC8D3C796C8D355C722" + $"C7D9C7FAC7F0C722C796C722C7C3C722C796C6BEC796C5F6C796C65AC796C340" + $"C796BDD3C796C089C7C3BDD355BDD3C7F0BDD3C7D9BCF953BB46C796BC1F53BB" + $"4653BB4653BB4653BB460607FF1FC3F0BAF6C3F0BAF6C3F0BB10C3F0BB46C3F0" + $"BB2BC511BB4653BB46C631BB46C7CEBB46C8C6BB46C84ABB46C8C6BB2BC8C6BA" + $"F6C8C6BB10C72ABAF6C3F0BAF6C58DBAF6C3F0BAF6BAF6021AB6E7BAF6B6E7BA" + $"F6B6D7BC23B6B9BE7CB6C8BD4FB6DDBE7CB725BE7CB701BE7CB732BDCEB7A1BC" + $"DEB75BBD44B7E7BC78B89DBC10B83BBC34B8E9BBF6BA1DBBE8B96ABBE8BAB7BB" + $"E8BBEBBBE8BB51BBE8BBEBBFBBBBEBC761BBEBC38EBBEBC839BBACC900BBD5C8" + $"C3BB68C962BA52C992BAF4C992BA25C992B9CAC992B9F7C992B9CA59B9CAC9FC" + $"B9CAC9D9BBEAC9FCC029C9FCBE09C9FCC029C9D9C029C992C02959BFFCC992BF" + $"A3C992BFCFC992BF0DC992BE57C91BBE9FC96ABE24C8E0BE0BC761BE0BC84EBE" + $"0BC38EBE0BBBE8BE0BBFBBBEBFBBE8C029BBE8BF74BBE8C0C7BBE8C1A7BC38C1" + $"47BC03C209BC6BC293BD29C258BCBBC2B7BD6DC2E8BE7CC2D3BDDDC30CBE7CC3" + $"54BE7CC330BE7CC346BD4FC329BAF6C337BC23BF13BAF6B6E7BAF6BAFDBAF6B6" + $"E7BAF6B6E7BAF6B6E7BAF6B6E7BAF60216B6B9B583B6B9B583B6B9B720B6B9BA" + $"5AB6B9B8BDB6D3BA5AB707BA5AB6EDBA5AB707B942B707B712B707B82AB7C6B7" + $"4EB9442CB885B78BB944B79AB944B740B944B76DBBC5B740C0C6B740BE46B740" + $"C0C6B76DC0C62CC0C6B79AC186B78BC304B713C245B74FC304B82CC304BA5FC3" + $"04B945C31FBA5FC354BA5FC339BA5FC354B8C1C354B587C354B724C339B587C3" + $"04B587C31FB587C304B5FAC304B6E0C304B66DC245B6A5C0C6B62EC186B669C0" + $"C6B65BC0C6B6B5C0C6B688BE46B6B5B944B6B5BBC5B6B5B944B688B944B62EB9" + $"44B65BB885B66AB707B6E2B7C6B6A6B707B66DB707B583B707B5F8B6EDB583B6" + $"B9B583B6D3B583B6B9B583B6B9B583B6B9B583B6B9B583010A00050001020304" + $"00" +}; diff --git a/media-gfx/fontforge/fontforge-20190501~git.recipe b/media-gfx/fontforge/fontforge-20190501~git.recipe deleted file mode 100644 index 1301d81a5..000000000 --- a/media-gfx/fontforge/fontforge-20190501~git.recipe +++ /dev/null @@ -1,144 +0,0 @@ -SUMMARY="An outline commandline-only font editor" -DESCRIPTION="An outline font editor that lets you create your own OpenType, \ -TrueType, CID-keyed, multi-master fonts and more... or simply edit existing \ -ones. This port is only CLI." -HOMEPAGE="https://fontforge.github.io/" -COPYRIGHT="2000-2018 George Williams - The FontForge Project" -LICENSE="GNU GPL v3 - BSD (3-clause)" -REVISION="7" -srcGitRev="e99cc504beb6b7765d72d9f4698ae1b727031aaa" -SOURCE_URI="https://github.com/fontforge/fontforge/archive/$srcGitRev.tar.gz" -CHECKSUM_SHA256="bf99ec3da1f1467d96a48562367a8c472cd3ec6a2685f537d952da63aa304120" -SOURCE_FILENAME="fontforge-$portVersion.tar.gz" -SOURCE_DIR="fontforge-$srcGitRev" -PATCHES="fontforge-$portVersion.patchset" - -ARCHITECTURES="all !x86_gcc2" -SECONDARY_ARCHITECTURES="x86" - -# On x86_gcc2 we don't want to install the commands in bin//, but in bin/. -commandSuffix=$secondaryArchSuffix -commandBinDir=$binDir -if [ "$targetArchitecture" = x86_gcc2 ]; then - commandSuffix= - commandBinDir=$prefix/bin -fi - -PROVIDES=" - fontforge$secondaryArchSuffix = $portVersion - cmd:fontforge$commandSuffix - cmd:fontimage$commandSuffix - cmd:fontlint$commandSuffix - cmd:sfddiff$commandSuffix - lib:libfontforge$secondaryArchSuffix = 3.0.0 compat >= 3 - lib:libfontforgeexe$secondaryArchSuffix = 3.0.0 compat >= 3 - lib:libgunicode$secondaryArchSuffix = 5.0.0 compat >= 5 - lib:libgutils$secondaryArchSuffix = 3.0.1 compat >= 3 - " -REQUIRES=" - haiku$secondaryArchSuffix - lib:libbz2$secondaryArchSuffix -# lib:libcairo$secondaryArchSuffix - lib:libfreetype$secondaryArchSuffix -# lib:libfribidi$secondaryArchSuffix - lib:libgif$secondaryArchSuffix - lib:libglib_2.0$secondaryArchSuffix - lib:libiconv$secondaryArchSuffix - lib:libintl$secondaryArchSuffix - lib:libjpeg$secondaryArchSuffix - lib:libltdl$secondaryArchSuffix - lib:libncurses$secondaryArchSuffix -# lib:libpangocairo_1.0$secondaryArchSuffix - lib:libpng16$secondaryArchSuffix - lib:libpython3.9$secondaryArchSuffix - lib:libreadline$secondaryArchSuffix - lib:libspiro$secondaryArchSuffix - lib:libtiff$secondaryArchSuffix -# lib:libuninameslist$secondaryArchSuffix - lib:libxml2$secondaryArchSuffix - lib:libz$secondaryArchSuffix - " - -PROVIDES_devel=" - fontforge${secondaryArchSuffix}_devel = $portVersion - devel:libfontforge$secondaryArchSuffix = 3.0.0 compat >= 3 - devel:libfontforgeexe$secondaryArchSuffix = 3.0.0 compat >= 3 - devel:libgunicode$secondaryArchSuffix = 5.0.0 compat >= 5 - devel:libgutils$secondaryArchSuffix = 3.0.1 compat >= 3 - " -REQUIRES_devel=" - fontforge$secondaryArchSuffix == $portVersion base - " - -BUILD_REQUIRES=" - haiku${secondaryArchSuffix}_devel - devel:libbz2$secondaryArchSuffix -# devel:libcairo$secondaryArchSuffix - devel:libfreetype$secondaryArchSuffix -# devel:libfribidi$secondaryArchSuffix - devel:libgif$secondaryArchSuffix - devel:libglib_2.0$secondaryArchSuffix - devel:libiconv$secondaryArchSuffix - devel:libintl$secondaryArchSuffix - devel:libjpeg$secondaryArchSuffix - devel:libltdl$secondaryArchSuffix - devel:libncurses$secondaryArchSuffix -# devel:libpangocairo_1.0$secondaryArchSuffix - devel:libpng16$secondaryArchSuffix - devel:libpython3.9$secondaryArchSuffix - devel:libreadline$secondaryArchSuffix - devel:libspiro$secondaryArchSuffix - devel:libtiff$secondaryArchSuffix -# devel:libuninameslist$secondaryArchSuffix - devel:libxml2$secondaryArchSuffix - devel:libz$secondaryArchSuffix - " -BUILD_PREREQUIRES=" - cmd:aclocal - cmd:autoconf - cmd:automake - cmd:find - cmd:gcc$secondaryArchSuffix - cmd:ld$secondaryArchSuffix - cmd:libtoolize$secondaryArchSuffix - cmd:make - cmd:pkg_config$secondaryArchSuffix - cmd:python3 - " - -TEST_REQUIRES=" - cmd:wget - " - -BUILD() -{ - export LDFLAGS="-lnetwork $LDFLAGS" - ./bootstrap - runConfigure --omit-dirs binDir ./configure \ - --bindir=$commandBinDir \ - --enable-python-scripting=3 \ - --disable-static - make $jobArgs -} - -INSTALL() -{ - make install - - for l in libfontforge libfontforgeexe libgunicode libgutils; do - rm -f $libDir/$l.la - prepareInstalledDevelLib $l - done - fixPkgconfig - - # devel package - packageEntries devel \ - $developDir -} - -TEST() -{ - make check -} diff --git a/media-gfx/fontforge/fontforge-20230101.recipe b/media-gfx/fontforge/fontforge-20230101.recipe new file mode 100644 index 000000000..7a5530e8f --- /dev/null +++ b/media-gfx/fontforge/fontforge-20230101.recipe @@ -0,0 +1,160 @@ +SUMMARY="An outline font editor" +DESCRIPTION="An outline font editor that lets you create your own OpenType, \ +TrueType, CID-keyed, multi-master fonts and more... or simply edit existing \ +ones." +HOMEPAGE="https://fontforge.github.io/" +COPYRIGHT="2000-2018 George Williams + The FontForge Project" +LICENSE="GNU GPL v3 + BSD (3-clause)" +REVISION="1" +SOURCE_URI="https://github.com/fontforge/fontforge/releases/download/$portVersion/fontforge-$portVersion.tar.xz" +CHECKSUM_SHA256="ca82ec4c060c4dda70ace5478a41b5e7b95eb035fe1c4cf85c48f996d35c60f8" +PATCHES="fontforge-$portVersion.patchset" +ADDITIONAL_FILES="fontforge.rdef.in" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +# On x86_gcc2 we don't want to install the commands in bin//, but in bin/. +commandSuffix=$secondaryArchSuffix +commandBinDir=$binDir +if [ "$targetArchitecture" = x86_gcc2 ]; then + commandSuffix= + commandBinDir=$prefix/bin +fi + +PROVIDES=" + fontforge$secondaryArchSuffix = $portVersion + cmd:fontforge$commandSuffix + cmd:fontimage$commandSuffix + cmd:fontlint$commandSuffix + cmd:sfddiff$commandSuffix + lib:libfontforge$secondaryArchSuffix = 4 compat >= 4 + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libbrotlienc$secondaryArchSuffix + lib:libbrotlidec$secondaryArchSuffix +# lib:libcairo$secondaryArchSuffix +# lib:libcairo_gobject$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix +# lib:libgdk_3$secondaryArchSuffix +# lib:libgdk_pixbuf_2.0$secondaryArchSuffix + lib:libgif$secondaryArchSuffix + lib:libgio_2.0$secondaryArchSuffix + lib:libglib_2.0$secondaryArchSuffix + lib:libgobject_2.0$secondaryArchSuffix +# lib:libharfbuzz$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix +# lib:libpango_1.0$secondaryArchSuffix +# lib:libpangocairo_1.0$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libpython3.10$secondaryArchSuffix + lib:libreadline$secondaryArchSuffix + lib:libspiro$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + lib:libwoff2enc$secondaryArchSuffix + lib:libwoff2dec$secondaryArchSuffix + lib:libxml2$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +PROVIDES_devel=" + fontforge${secondaryArchSuffix}_devel = $portVersion + devel:libfontforge$secondaryArchSuffix = 4 compat >= 4 + " +REQUIRES_devel=" + fontforge$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libbrotlienc$secondaryArchSuffix + devel:libbrotlidec$secondaryArchSuffix +# devel:libbz2$secondaryArchSuffix +# devel:libcairo$secondaryArchSuffix +# devel:libcairo_gobject$secondaryArchSuffix + devel:libexecinfo$secondaryArchSuffix + devel:libfreetype$secondaryArchSuffix +# devel:libgdk_3$secondaryArchSuffix +# devel:libgdk_pixbuf_2.0$secondaryArchSuffix + devel:libgif$secondaryArchSuffix + devel:libgio_2.0$secondaryArchSuffix + devel:libglib_2.0$secondaryArchSuffix + devel:libgobject_2.0$secondaryArchSuffix +# devel:libharfbuzz$secondaryArchSuffix + devel:libiconv$secondaryArchSuffix + devel:libintl$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix +# devel:libpango_1.0$secondaryArchSuffix +# devel:libpangocairo_1.0$secondaryArchSuffix + devel:libpng16$secondaryArchSuffix + devel:libpython3.10$secondaryArchSuffix + devel:libreadline$secondaryArchSuffix + devel:libspiro$secondaryArchSuffix + devel:libtiff$secondaryArchSuffix + devel:libwoff2enc$secondaryArchSuffix + devel:libwoff2dec$secondaryArchSuffix + devel:libxml2$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:g++$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + cmd:python3 + cmd:realpath + " + +BUILD() +{ + cmake -Bbuild -S. -DCMAKE_BUILD_TYPE=Release \ + $cmakeDirArgs \ + -DCMAKE_INSTALL_BINDIR=$commandBinDir \ + -DFONTFORGE_DEFAULT_CFLAGS="-Wno-maybe-uninitialized" \ + -DENABLE_GUI=OFF \ + -DENABLE_X11=OFF \ + -DENABLE_WOFF2=ON \ + -DPYHOOK_INSTALL_DIR=$prefix/lib/pythonn3.10/vendor-packages + make -C build $jobArgs +} + +INSTALL() +{ + make -C build install + + # we are not linux + rm -rf $dataDir/{applications,icons,metainfo,mime} + + prepareInstalledDevelLib libfontforge + fixPkgconfig + + local APP_SIGNATURE="application/vnd.font-fontforge-sfd" + local MAJOR="2023" + local MIDDLE="01" + local MINOR="01" + local LONG_INFO="$SUMMARY" + sed \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + $portDir/additional-files/fontforge.rdef.in > fontforge.rdef + + addResourcesToBinaries fontforge.rdef $commandBinDir/fontforge +# addAppDeskbarSymlink $commandBinDir/fontforge FontForge + + # devel package + packageEntries devel \ + $developDir +} + +TEST() +{ + make -C build check +} diff --git a/media-gfx/fontforge/patches/fontforge-20190501~git.patchset b/media-gfx/fontforge/patches/fontforge-20190501~git.patchset deleted file mode 100644 index 18b1ff787..000000000 --- a/media-gfx/fontforge/patches/fontforge-20190501~git.patchset +++ /dev/null @@ -1,70 +0,0 @@ -From 2259ad25123ad6254c412a8fa017657d8babd40d Mon Sep 17 00:00:00 2001 -From: begasus -Date: Sat, 1 Apr 2023 11:47:25 +0200 -Subject: fontforge, revert patch for locale_t - - -diff --git a/fontforge/splinefont.h b/fontforge/splinefont.h -index 8f54ef4..643e3dd 100644 ---- a/fontforge/splinefont.h -+++ b/fontforge/splinefont.h -@@ -2622,7 +2622,7 @@ extern void debug_printHint( StemInfo *h, char* msg ); - - #include "ustring.h" - --#if defined(_WIN32) || defined(__HAIKU__) -+#if defined(_WIN32) - #define BAD_LOCALE_HACK - typedef char* locale_t; - #define LC_GLOBAL_LOCALE ((locale_t)-1) --- -2.37.3 - - -From b43decb01a4428a32b60cba25936f99c14280750 Mon Sep 17 00:00:00 2001 -From: begasus -Date: Sat, 1 Apr 2023 12:31:07 +0200 -Subject: Don't use -Werror=int-conversion on 32bit - - -diff --git a/configure.ac b/configure.ac -index 1ed4685..d124e94 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -548,7 +548,7 @@ AM_CONDITIONAL([FONTTOOLS],[test x"${fontforge_extras}" = xyes]) - # Create and Set FontForge Compiler Flags - - my_cflags="${my_cflags} ${WARNING_CFLAGS}" --my_cflags="${my_cflags} -Werror=implicit-function-declaration -Werror=int-conversion" -+my_cflags="${my_cflags} -Werror=implicit-function-declaration" - if test x"${i_do_have_freetype_debugger}" != xno; then - my_cflags="${my_cflags} -I${FREETYPE_SOURCE}/src/truetype" - my_cflags="${my_cflags} -I${FREETYPE_SOURCE}/include" --- -2.37.3 - - -From 5627c0819e05c49625e0d5a0597e3ee9d8c287ad Mon Sep 17 00:00:00 2001 -From: begasus -Date: Sun, 2 Apr 2023 17:04:10 +0200 -Subject: Fix build with python newer then 3.7 - - -diff --git a/m4/fontforge_arg_enable.m4 b/m4/fontforge_arg_enable.m4 -index 26e02cd..533bf9d 100644 ---- a/m4/fontforge_arg_enable.m4 -+++ b/m4/fontforge_arg_enable.m4 -@@ -116,8 +116,8 @@ fi - if test x"${i_do_have_python_scripting}" != xyes; then - i_want_python_ver= - else -- PKG_CHECK_MODULES([PYTHON],[python-"${PYTHON_VERSION}"], dnl [PKG_CHECK_MODULES([PYTHONDEV],[python-"${PYTHON_VERSION}"],,[i_do_have_python_scripting=maybe])], -- [PKG_CHECK_MODULES([PYTHONDEV],[python-"${PYTHON_VERSION}"],,[i_do_have_python_scripting=no])], -+ PKG_CHECK_MODULES([PYTHON],[python-"${PYTHON_VERSION}"-embed], dnl [PKG_CHECK_MODULES([PYTHONDEV],[python-"${PYTHON_VERSION}"-embed],,[i_do_have_python_scripting=maybe])], -+ [PKG_CHECK_MODULES([PYTHONDEV],[python-"${PYTHON_VERSION}"-embed],,[i_do_have_python_scripting=no])], - [i_do_have_python_scripting=no]) - dnl dnl TODO: have python3 AND python2, but only have python2 dev, but no python3 dev - dnl if test x"${i_do_have_python_scripting}" = xmaybe; then --- -2.37.3 - diff --git a/media-gfx/fontforge/patches/fontforge-20230101.patchset b/media-gfx/fontforge/patches/fontforge-20230101.patchset new file mode 100644 index 000000000..dc16c5e6e --- /dev/null +++ b/media-gfx/fontforge/patches/fontforge-20230101.patchset @@ -0,0 +1,44 @@ +From 3ef79aa5aee2d0a53f700d8fcaa7ecd1b3b06d30 Mon Sep 17 00:00:00 2001 +From: Begasus +Date: Sat, 30 Sep 2023 08:23:13 +0200 +Subject: fontforge, revert patch for locale_t + + +diff --git a/fontforge/splinefont.h b/fontforge/splinefont.h +index cd6f554..509d813 100644 +--- a/fontforge/splinefont.h ++++ b/fontforge/splinefont.h +@@ -2630,7 +2630,7 @@ extern bool isSplinePointPartOfGuide( SplineFont *sf, SplinePoint *sp ); + + extern void debug_printHint( StemInfo *h, char* msg ); + +-#if defined(_WIN32) || defined(__HAIKU__) ++#if defined(_WIN32) + #define BAD_LOCALE_HACK + typedef char* locale_t; + #define LC_GLOBAL_LOCALE ((locale_t)-1) +-- +2.37.3 + + +From 567469874c639636a42de33dad4641bc356492f8 Mon Sep 17 00:00:00 2001 +From: Begasus +Date: Sat, 30 Sep 2023 09:07:15 +0200 +Subject: Remove custom library search path (RPATH/RUNPATH) (Debian) + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e234cb6..b6a9b14 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -38,7 +38,6 @@ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) + + set_default_build_type(RelWithDebInfo) # Sets CMAKE_BUILD_TYPE +-set_default_rpath() + add_uninstall_target() + + # Options +-- +2.37.3 +