mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 20:20:06 +02:00
213 lines
7.4 KiB
Bash
213 lines
7.4 KiB
Bash
SUMMARY="Cross-platform GUI library"
|
|
DESCRIPTION="wxWidgets is a C++ library that lets developers create \
|
|
applications for Windows, macOS, Linux and other platforms with a single \
|
|
code base. It has popular language bindings for Python, Perl, Ruby and many \
|
|
other languages, and unlike other cross-platform toolkits, wxWidgets gives \
|
|
applications a truly native look and feel because it uses the platform's \
|
|
native API rather than emulating the GUI. It's also extensive, free, \
|
|
open-source and mature."
|
|
HOMEPAGE="https://www.wxwidgets.org/"
|
|
COPYRIGHT="1998-2023 Julian Smart, Robert Roebling et al"
|
|
LICENSE="GNU LGPL v2"
|
|
REVISION="2"
|
|
SOURCE_URI="https://github.com/wxWidgets/wxWidgets/releases/download/v$portVersion/wxWidgets-$portVersion.tar.bz2"
|
|
CHECKSUM_SHA256="0640e1ab716db5af2ecb7389dbef6138d7679261fbff730d23845ba838ca133e"
|
|
SOURCE_DIR="wxWidgets-$portVersion"
|
|
PATCHES="wxqt-$portVersion.patchset"
|
|
|
|
ARCHITECTURES="all !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="x86"
|
|
|
|
libVersion="$portVersion"
|
|
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
|
libSoVersion="0.2.2"
|
|
|
|
PROVIDES="
|
|
wxqt$secondaryArchSuffix = $portVersion
|
|
lib:libwx_baseu_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_baseu_net_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_baseu_xml_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_adv_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_aui_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_core_3.2$secondaryArchSuffix = $libVersionCompat
|
|
# lib:libwx_qtu_gl_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_html_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_media_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_propgrid_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_qa_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_ribbon_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_richtext_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_stc_3.2$secondaryArchSuffix = $libVersionCompat
|
|
lib:libwx_qtu_xrc_3.2$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
lib:libcairo$secondaryArchSuffix
|
|
lib:libexecinfo$secondaryArchSuffix
|
|
lib:libexpat$secondaryArchSuffix
|
|
# lib:libGL$secondaryArchSuffix
|
|
# lib:libGLU$secondaryArchSuffix
|
|
lib:libiconv$secondaryArchSuffix
|
|
lib:libjpeg$secondaryArchSuffix
|
|
lib:liblzma$secondaryArchSuffix
|
|
lib:libpcre2_32$secondaryArchSuffix
|
|
lib:libpng16$secondaryArchSuffix
|
|
lib:libQt5Core$secondaryArchSuffix
|
|
lib:libQt5Gui$secondaryArchSuffix
|
|
lib:libQt5Widgets$secondaryArchSuffix
|
|
lib:libSDL_1.2$secondaryArchSuffix
|
|
lib:libtiff$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
wxqt${secondaryArchSuffix}_devel = $portVersion
|
|
cmd:wx_config$secondaryArchSuffix = $portVersion compat >= 3
|
|
cmd:wxrc$secondaryArchSuffix = $portVersion compat >= 3
|
|
cmd:wxrc_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_baseu_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_baseu_net_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_baseu_xml_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_adv_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_aui_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_core_3.2$secondaryArchSuffix = $libVersionCompat
|
|
# devel:libwx_qtu_gl_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_html_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_media_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_propgrid_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_qa_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_ribbon_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_richtext_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_stc_3.2$secondaryArchSuffix = $libVersionCompat
|
|
devel:libwx_qtu_xrc_3.2$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES_devel="
|
|
haiku$secondaryArchSuffix
|
|
wxqt$secondaryArchSuffix == $portVersion base
|
|
devel:libcairo$secondaryArchSuffix
|
|
devel:libjpeg$secondaryArchSuffix
|
|
devel:libpng16$secondaryArchSuffix
|
|
devel:libQt5Widgets$secondaryArchSuffix
|
|
devel:libtiff$secondaryArchSuffix >= 6
|
|
devel:libz$secondaryArchSuffix
|
|
lib:libexecinfo$secondaryArchSuffix
|
|
lib:libexpat$secondaryArchSuffix
|
|
lib:libiconv$secondaryArchSuffix
|
|
lib:liblzma$secondaryArchSuffix
|
|
lib:libpcre2_32$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
devel:libcairo$secondaryArchSuffix
|
|
devel:libexecinfo$secondaryArchSuffix
|
|
devel:libexpat$secondaryArchSuffix
|
|
# devel:libGL$secondaryArchSuffix
|
|
# devel:libGLU$secondaryArchSuffix
|
|
devel:libiconv$secondaryArchSuffix
|
|
devel:libjpeg$secondaryArchSuffix
|
|
devel:liblzma$secondaryArchSuffix
|
|
devel:libpng16$secondaryArchSuffix
|
|
devel:libQt5Core$secondaryArchSuffix
|
|
devel:libQt5Gui$secondaryArchSuffix
|
|
devel:libQt5Widgets$secondaryArchSuffix
|
|
devel:libSDL_1.2$secondaryArchSuffix
|
|
devel:libtiff$secondaryArchSuffix >= 6
|
|
devel:libz$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:find
|
|
cmd:gawk
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:grep
|
|
cmd:ld$secondaryArchSuffix
|
|
cmd:make
|
|
cmd:pkg_config$secondaryArchSuffix
|
|
"
|
|
|
|
defineDebugInfoPackage wxqt$secondaryArchSuffix \
|
|
"$libDir"/libwx_baseu-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_baseu_net-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_baseu_xml-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_adv-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_aui-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_core-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_html-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_media-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_propgrid-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_qa-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_ribbon-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_richtext-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_stc-3.2.so.$libSoVersion \
|
|
"$libDir"/libwx_qtu_xrc-3.2.so.$libSoVersion
|
|
# "$libDir"/libwx_qtu_gl-3.2.so.$libSoVersion
|
|
|
|
BUILD()
|
|
{
|
|
export CXXFLAGS="-std=c++11 -fpermissive"
|
|
|
|
runConfigure ./configure \
|
|
--with-qt \
|
|
--enable-shared \
|
|
--enable-printfposparam \
|
|
--enable-unicode \
|
|
--disable-fswatcher \
|
|
--with-sdl
|
|
|
|
make $jobArgs
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
make install
|
|
|
|
prepareInstalledDevelLibs \
|
|
libwx_baseu-3.2 \
|
|
libwx_baseu_net-3.2 \
|
|
libwx_baseu_xml-3.2 \
|
|
libwx_qtu_adv-3.2 \
|
|
libwx_qtu_aui-3.2 \
|
|
libwx_qtu_core-3.2 \
|
|
libwx_qtu_html-3.2 \
|
|
libwx_qtu_media-3.2 \
|
|
libwx_qtu_propgrid-3.2 \
|
|
libwx_qtu_qa-3.2 \
|
|
libwx_qtu_ribbon-3.2 \
|
|
libwx_qtu_richtext-3.2 \
|
|
libwx_qtu_stc-3.2 \
|
|
libwx_qtu_xrc-3.2
|
|
# libwx_qtu_gl-3.2
|
|
|
|
# Install some missing headers that the build system didn't install.
|
|
cp include/wx/generic/caret.h \
|
|
include/wx/generic/clrpickerg.h \
|
|
include/wx/generic/imaglist.h \
|
|
include/wx/generic/filepickerg.h \
|
|
$includeDir/wx-3.2/wx/generic/
|
|
|
|
cp include/wx/qt/nonownedwnd.h \
|
|
$includeDir/wx-3.2/wx/qt/
|
|
|
|
# Remove the symlinked wx-config and put the real one there instead.
|
|
rm $binDir/wx-config
|
|
mv $libDir/wx/config/qt-unicode-3.2 $binDir/wx-config
|
|
|
|
# Remove nonexistent directory from cflags
|
|
sed -i 's!"-I${libdir}/wx/include/qt-unicode-3.2" !!' $binDir/wx-config
|
|
|
|
# Move setup.h to the main include directory.
|
|
mv $libDir/wx/include/qt-unicode-3.2/wx/setup.h $includeDir/wx-3.2/wx/
|
|
|
|
rm -rf $libDir/wx/
|
|
|
|
# Patch wx-config to pass in the Qt libs & etc. as they're usually needed.
|
|
sed -i 's/wx_libs="$_guildflags/wx_libs="$ldlibs_core $_guildflags/' \
|
|
$binDir/wx-config
|
|
|
|
packageEntries devel \
|
|
$developDir \
|
|
$prefix/bin \
|
|
$dataDir/aclocal
|
|
}
|