SUMMARY="A open source, cross platform, free C, C++ and Fortran IDE" DESCRIPTION="Code::Blocks is a free C, C++ and Fortran IDE built to meet the most demanding \ needs of its users. It is designed to be very extensible and fully configurable. \ Finally, an IDE with all the features you need, having a consistent look, feel \ and operation across platforms. \ Built around a plugin framework, Code::Blocks can be extended with plugins. \ Any kind of functionality can be added by installing/coding a plugin. \ For instance, compiling and debugging functionality is already provided by plugins!" HOMEPAGE="https://codeblocks.org" COPYRIGHT="2004-2025, The Code::Blocks Team" LICENSE="GNU GPL v3" REVISION="1" SOURCE_URI="https://sourceforge.net/projects/codeblocks/files/Sources/$portVersion/codeblocks_$portVersion.tar.xz" CHECKSUM_SHA256="b0f6aa5908d336d7f41f9576b2418ac7d27efbc59282aa8c9171d88cea74049e" SOURCE_DIR="codeblocks_$portVersion" PATCHES="codeblocks-$portVersion.patchset" ADDITIONAL_FILES="codeblocks.rdef.in" ARCHITECTURES="?all !x86_gcc2" SECONDARY_ARCHITECTURES="?x86" libVersion="0.0.1" libVersionCompat="$libVersion compat >= ${libVersion%%.*}" PROVIDES=" codeblocks$secondaryArchSuffix = $portVersion app:CodeBlocks = $portVersion cmd:cb_console_runner$secondaryArchSuffix = $portVersion cmd:cb_share_config$secondaryArchSuffix = $portVersion lib:libcodeblocks$secondaryArchSuffix = $libVersionCompat " REQUIRES=" haiku$secondaryArchSuffix lib:libatk_1.0$secondaryArchSuffix lib:libcairo$secondaryArchSuffix lib:libGL$secondaryArchSuffix lib:libgdk_3$secondaryArchSuffix lib:libgdk_pixbuf_2.0$secondaryArchSuffix lib:libglib_2.0$secondaryArchSuffix lib:libgio_2.0$secondaryArchSuffix lib:libgobject_2.0$secondaryArchSuffix lib:libgtk_3$secondaryArchSuffix lib:libintl$secondaryArchSuffix lib:libharfbuzz$secondaryArchSuffix lib:libpango_1.0$secondaryArchSuffix lib:libpangocairo_1.0$secondaryArchSuffix lib:libpng16$secondaryArchSuffix lib:libQt5Concurrent$secondaryArchSuffix lib:libQt5Core$secondaryArchSuffix lib:libQt5Designer$secondaryArchSuffix lib:libQt5DesignerComponents$secondaryArchSuffix lib:libQt5Gui$secondaryArchSuffix lib:libQt5Help$secondaryArchSuffix lib:libQt5Network$secondaryArchSuffix lib:libQt5PrintSupport$secondaryArchSuffix lib:libQt5Qml$secondaryArchSuffix lib:libQt5Quick$secondaryArchSuffix lib:libQt5QuickWidgets$secondaryArchSuffix lib:libQt5Script$secondaryArchSuffix lib:libQt5Sql$secondaryArchSuffix lib:libQt5Svg$secondaryArchSuffix lib:libQt5Widgets$secondaryArchSuffix lib:libQt5Xml$secondaryArchSuffix lib:libtinyxml$secondaryArchSuffix lib:libtiff$secondaryArchSuffix lib:libwx_baseu_3.2$secondaryArchSuffix lib:libwx_baseu_net_3.2$secondaryArchSuffix lib:libwx_baseu_xml_3.2$secondaryArchSuffix lib:libwx_gtk3u_adv_3.2$secondaryArchSuffix lib:libwx_gtk3u_aui_3.2$secondaryArchSuffix lib:libwx_gtk3u_core_3.2$secondaryArchSuffix lib:libwx_gtk3u_core_3.2$secondaryArchSuffix lib:libwx_gtk3u_media_3.2$secondaryArchSuffix lib:libwx_gtk3u_propgrid_3.2$secondaryArchSuffix lib:libwx_gtk3u_qa_3.2$secondaryArchSuffix lib:libwx_gtk3u_ribbon_3.2$secondaryArchSuffix lib:libwx_gtk3u_richtext_3.2$secondaryArchSuffix lib:libwx_gtk3u_stc_3.2$secondaryArchSuffix lib:libwx_gtk3u_xrc_3.2$secondaryArchSuffix lib:libz$secondaryArchSuffix " PROVIDES_devel=" codeblocks${secondaryArchSuffix}_devel = $portVersion devel:libcodeblocks$secondaryArchSuffix = $libVersionCompat " REQUIRES_devel=" codeblocks$secondaryArchSuffix == $portVersion base devel:libcodeblocks$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel wxgtk${secondaryArchSuffix}_devel devel:libcairo$secondaryArchSuffix devel:libjpeg$secondaryArchSuffix devel:libGL$secondaryArchSuffix devel:liblzma$secondaryArchSuffix devel:libQt5Concurrent$secondaryArchSuffix devel:libQt5Core$secondaryArchSuffix devel:libQt5Designer$secondaryArchSuffix devel:libQt5DesignerComponents$secondaryArchSuffix devel:libQt5Gui$secondaryArchSuffix devel:libQt5Help$secondaryArchSuffix devel:libQt5Network$secondaryArchSuffix devel:libQt5PrintSupport$secondaryArchSuffix devel:libQt5Qml$secondaryArchSuffix devel:libQt5Quick$secondaryArchSuffix devel:libQt5QuickWidgets$secondaryArchSuffix devel:libQt5Script$secondaryArchSuffix devel:libQt5Sql$secondaryArchSuffix devel:libQt5Svg$secondaryArchSuffix devel:libQt5Widgets$secondaryArchSuffix devel:libQt5Xml$secondaryArchSuffix devel:libpng16$secondaryArchSuffix devel:libtiff$secondaryArchSuffix devel:libtinyxml$secondaryArchSuffix devel:libz$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:aclocal cmd:autoreconf cmd:g++$secondaryArchSuffix cmd:ld$secondaryArchSuffix cmd:libtoolize$secondaryArchSuffix # cmd:m4 cmd:make cmd:pkg_config$secondaryArchSuffix cmd:python3 cmd:zip " BUILD() { export LDFLAGS="-lnetwork -lbsd" autoreconf -vfi runConfigure ./configure \ --enable-debugger=yes \ --enable-pch=no \ --with-gnu-ld=yes \ --with-contrib-plugins="-DoxyBlocks,-keybinder,-dragscroll,-FileManager,-NassiShneiderman,-spellchecker,-wxsmith,-wxsmithcontrib,-wxcontrib,-wxsmithaui" make $jobArgs } INSTALL() { make install mkdir -p $appsDir mv $prefix/bin/codeblocks $appsDir/CodeBlocks local MAJOR="`echo "$portVersion" | cut -d. -f1`" local MIDDLE="`echo "$portVersion" | cut -d. -f2`" local APP_NAME="CodeBlocks" local LONG_INFO="$SUMMARY" local APP_SIGNATURE="application/x-vnd.codeblocks" sed \ -e "s|@MAJOR@|$MAJOR|" \ -e "s|@MIDDLE@|$MIDDLE|" \ -e "s|@MINOR@|$MINOR|" \ -e "s|@LONG_INFO@|$LONG_INFO|" \ -e "s|@APP_NAME@|$APP_NAME|" \ -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ $portDir/additional-files/codeblocks.rdef.in > codeblocks.rdef addResourcesToBinaries codeblocks.rdef $appsDir/CodeBlocks addAppDeskbarSymlink $appsDir/CodeBlocks "Code::Blocks" rm -rf $libDir/*.la rm -rf $libDir/codeblocks/plugins/*.la prepareInstalledDevelLib libcodeblocks fixPkgconfig packageEntries devel \ $developDir }