From e2edfc00ab52cc4103070de63a99fa886208040b Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Tue, 18 Jan 2022 19:13:27 -0500 Subject: [PATCH] Introduce recipe for Xlibe. It isn't necessarily ready for general use, but GTK3 works well enough to enable it. --- x11-libs/xlibe/xlibe-0.1.0.recipe | 87 +++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 x11-libs/xlibe/xlibe-0.1.0.recipe diff --git a/x11-libs/xlibe/xlibe-0.1.0.recipe b/x11-libs/xlibe/xlibe-0.1.0.recipe new file mode 100644 index 000000000..542247053 --- /dev/null +++ b/x11-libs/xlibe/xlibe-0.1.0.recipe @@ -0,0 +1,87 @@ +SUMMARY="Xlib compatibility layer for Haiku" +DESCRIPTION="This package contains an Xlib implementation which does not \ +interface with X11 servers, but instead with the Haiku API, making it possible \ +to run X applications on Haiku without a real X server." +HOMEPAGE="https://github.com/waddlesplash/xlibe/" +COPYRIGHT="1984-2021 The Open Group + 2003 ja6hfa (Shibukawa Yoshiki), kazuyakt + 2021-2022 Haiku, Inc." +LICENSE="MIT + MIT (no promotion)" +REVISION="1" +SOURCE_URI="https://github.com/waddlesplash/xlibe/archive/refs/tags/0.1.0.tar.gz" +CHECKSUM_SHA256="a2217a77c4b14840f2b6fee52e192435fdb798a932afde5c7e6f153f16d452af" +SOURCE_DIR="xlibe-$portVersion" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="?x86" + +# Make sure the versions stay in line with the real libX11, libXext! +libX11Version=6.3.0 +libXextVersion=6.4.0 + +PROVIDES=" + xlibe$secondaryArchSuffix = $portVersion + lib:libX11$secondaryArchSuffix = $libX11Version compat >= 6 + lib:libXext$secondaryArchSuffix = $libXextVersion compat >= 6 + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix + " + +PROVIDES_devel=" + xlibe${secondaryArchSuffix}_devel = $portVersion + devel:libX11$secondaryArchSuffix = $libX11Version compat >= 6 + devel:libXext$secondaryArchSuffix = $libXextVersion compat >= 6 + " +REQUIRES_devel=" + xlibe$secondaryArchSuffix == $portVersion base + devel:kbproto + devel:xproto + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libiconv$secondaryArchSuffix + devel:kbproto + devel:xproto + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:gcc$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + " + +defineDebugInfoPackage libx11$secondaryArchSuffix \ + "$libDir"/libX11.so.$libX11Version \ + "$libDir"/libXext.so.$libXextVersion + +BUILD() +{ + cmake . $cmakeDirArgs \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo + make $jobArgs +} + +INSTALL() +{ + make install + + # make compatibility symlinks + mv $libDir/libX11.so.6 $libDir/libX11.so.$libX11Version + ln -s libX11.so.$libX11Version $libDir/libX11.so.6 + + mv $libDir/libXext.so.6 $libDir/libXext.so.$libXextVersion + ln -s libXext.so.$libXextVersion $libDir/libXext.so.6 + + prepareInstalledDevelLibs \ + libX11 \ + libXext + + fixPkgconfig + + packageEntries devel \ + $developDir +}