diff --git a/dev-util/codeblocks/additional-files/codeblocks.rdef.in b/dev-util/codeblocks/additional-files/codeblocks.rdef.in new file mode 100644 index 000000000..dacaef49b --- /dev/null +++ b/dev-util/codeblocks/additional-files/codeblocks.rdef.in @@ -0,0 +1,41 @@ +resource app_flags B_SINGLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "@APP_NAME@", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource vector_icon { + $"6E6369660503FFFF000300FF0003FF0000030000FF0427C20C020520BFD920BF" + $"D9B73FBFD9BFBFBFD9BB7FBFD9BFBFC419BFBFCC99BFBFC859BB7FCC9920CC99" + $"B73FCC9920C85920BFD920C41920BFD90205BFBF20BFBF20C3FF20CC7F20C83F" + $"20CC7FB73FCC7FBFBFCC7FBB7FC83FBFBFBFBFBFBFC3FFBFBFBFBFBB7FBFBF20" + $"BFBFB73FBFBF20020520B31920B319B73FB319BFBFB319BB7FB319BFBFB759BF" + $"BFBFD9BFBFBB99BB7FBFD920BFD9B73FBFD920BB9920B31920B75920B3190205" + $"BFBFBFD9BFBFBFD9C3FFBFD9CC7FBFD9C83FBFD9CC7FC419CC7FCC99CC7FC859" + $"C83FCC99BFBFCC99C3FFCC99BFBFC859BFBFBFD9BFBFC419BFBFBFD9020520B3" + $"1920B319BB7FB31960B319C3FFB31960B35D60B3E560B3A1C3FFB3E520B3E5BB" + $"7FB3E520B3A120B31920B35D20B319020520CBCD20CBCDBB7FCBCD60CBCDC3FF" + $"CBCD60CC1160CC9960CC55C3FFCC9920CC99BB7FCC9920CC5520CBCD20CC1120" + $"CBCD020522BF0D22BF0D2CBF0D40BF0D36BF0D40BF5140BFD940BF9536BFD922" + $"BFD92CBFD922BF9522BF0D22BF5122BF0D0205CBB3B3E5CBB3B3E5CBF7B3E560" + $"B3E5CC3BB3E560BBDD60CBCD60C3D5CC3BCBCDCBB3CBCDCBF7CBCDCBB3C3D5CB" + $"B3B3E5CBB3BBDDCBB3B3E5020520B3E520B3E5B344B3E522B3E5B388B3E522BB" + $"DD22CBCD22C3D5B388CBCD20CBCDB344CBCD20C3D520B3E520BBDD20B3E50205" + $"BFBFB3E7BFBFB3E7C003B3E7C08BB3E7C047B3E7C08BB7E3C08BBFDBC08BBBDF" + $"C047BFDBBFBFBFDBC003BFDBBFBFBBDFBFBFB3E7BFBFB7E3BFBFB3E70205BFBF" + $"BFF3BFBFBFF3C3BBBFF3CBB3BFF3C7B7BFF3CBB3C037CBB3C0BFCBB3C07BC7B7" + $"C0BFBFBFC0BFC3BBC0BFBFBFC07BBFBFBFF3BFBFC037BFBFBFF302053EBFF33E" + $"BFF3BF38BFF340BFF3BF7CBFF340C3EF40CBE740C7EBBF7CCBE73ECBE7BF38CB" + $"E73EC7EB3EBFF33EC3EF3EBFF30A0A000100000A010101000A020102000A0301" + $"03000A040104000A040105000A0403060708000A040109000A04010A000A0401" + $"0B00" +}; diff --git a/dev-util/codeblocks/codeblocks-20.03.recipe b/dev-util/codeblocks/codeblocks-25.03.recipe similarity index 53% rename from dev-util/codeblocks/codeblocks-20.03.recipe rename to dev-util/codeblocks/codeblocks-25.03.recipe index 324bde632..d02019c17 100644 --- a/dev-util/codeblocks/codeblocks-20.03.recipe +++ b/dev-util/codeblocks/codeblocks-25.03.recipe @@ -7,30 +7,43 @@ 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="2020 The Code::Blocks team" +COPYRIGHT="2004-2025, The Code::Blocks Team" LICENSE="GNU GPL v3" REVISION="1" -SOURCE_URI="http://sourceforge.net/projects/codeblocks/files/Sources/$portVersion/codeblocks-$portVersion.tar.xz" -CHECKSUM_SHA256="15eeb3e28aea054e1f38b0c7f4671b4d4d1116fd05f63c07aa95a91db89eaac5" -SOURCE_DIR="codeblocks-$portVersion" +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$secondaryArchSuffix = $portVersion + app:CodeBlocks = $portVersion cmd:cb_console_runner$secondaryArchSuffix = $portVersion cmd:cb_share_config$secondaryArchSuffix = $portVersion - cmd:codeblocks$secondaryArchSuffix = $portVersion - lib:libcodeblocks$secondaryArchSuffix = $portVersion - lib:codeblocks$secondaryArchSuffix = 0.0.0 + 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 @@ -48,27 +61,28 @@ REQUIRES=" lib:libQt5Svg$secondaryArchSuffix lib:libQt5Widgets$secondaryArchSuffix lib:libQt5Xml$secondaryArchSuffix + lib:libtinyxml$secondaryArchSuffix lib:libtiff$secondaryArchSuffix - lib:libwx_baseu_3.1$secondaryArchSuffix - lib:libwx_baseu_net_3.1$secondaryArchSuffix - lib:libwx_baseu_xml_3.1$secondaryArchSuffix - lib:libwx_qtu_adv_3.1$secondaryArchSuffix - lib:libwx_qtu_aui_3.1$secondaryArchSuffix - lib:libwx_qtu_core_3.1$secondaryArchSuffix - lib:libwx_qtu_html_3.1$secondaryArchSuffix - lib:libwx_qtu_media_3.1$secondaryArchSuffix - lib:libwx_qtu_propgrid_3.1$secondaryArchSuffix - lib:libwx_qtu_qa_3.1$secondaryArchSuffix - lib:libwx_qtu_ribbon_3.1$secondaryArchSuffix - lib:libwx_qtu_richtext_3.1$secondaryArchSuffix - lib:libwx_qtu_stc_3.1$secondaryArchSuffix - lib:libwx_qtu_xrc_3.1$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 = $portVersion compat >= 1 + devel:libcodeblocks$secondaryArchSuffix = $libVersionCompat " REQUIRES_devel=" codeblocks$secondaryArchSuffix == $portVersion base @@ -77,6 +91,7 @@ REQUIRES_devel=" BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel + wxgtk${secondaryArchSuffix}_devel devel:libcairo$secondaryArchSuffix devel:libjpeg$secondaryArchSuffix devel:libGL$secondaryArchSuffix @@ -99,36 +114,31 @@ BUILD_REQUIRES=" devel:libQt5Xml$secondaryArchSuffix devel:libpng16$secondaryArchSuffix devel:libtiff$secondaryArchSuffix + devel:libtinyxml$secondaryArchSuffix devel:libz$secondaryArchSuffix - wxqt${secondaryArchSuffix}_devel " BUILD_PREREQUIRES=" cmd:aclocal - cmd:automake - cmd:autoconf + cmd:autoreconf cmd:g++$secondaryArchSuffix + cmd:ld$secondaryArchSuffix cmd:libtoolize$secondaryArchSuffix - cmd:m4 +# cmd:m4 cmd:make - cmd:python2 cmd:pkg_config$secondaryArchSuffix - cmd:which + cmd:python3 cmd:zip " BUILD() { - libtoolize -fci - - aclocal -I m4 - - automake --add-missing --force-missing - - runConfigure ./configure --enable-compiler=yes \ - --enable-debugger=yes --prefix=$prefix \ - --libdir=$libDir --mandir=$manDir/man1 \ - --bindir=$binDir --datadir=$dataDir \ - --with-contrib-plugins=`yes,-DoxyBlocks,-keybinder,-dragscroll,-FileManager,-NassiShneiderman,-spellchecker,-wxsmith,-wxsmithcontrib,-wxcontrib,-wxsmithaui` + 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 } @@ -139,10 +149,31 @@ INSTALL() mkdir -p $appsDir - ln -s $prefix/bin/codeblocks $appsDir/CodeBlocks - addAppDeskbarSymlink $appsDir/CodeBlocks + 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 diff --git a/dev-util/codeblocks/patches/codeblocks-20.03.patchset b/dev-util/codeblocks/patches/codeblocks-20.03.patchset deleted file mode 100644 index ebf129500..000000000 --- a/dev-util/codeblocks/patches/codeblocks-20.03.patchset +++ /dev/null @@ -1,50 +0,0 @@ -From 90a82a200e423868a2b6e607b02c933c2cd7576a Mon Sep 17 00:00:00 2001 -From: Calvin Hill -Date: Tue, 12 May 2020 17:26:53 +0000 -Subject: codeblocks: Fix build by defining wxqt - - -diff --git a/src/src/app.h b/src/src/app.h -index d9808a9..f89dd51 100644 ---- a/src/src/app.h -+++ b/src/src/app.h -@@ -22,7 +22,7 @@ - #include // recent files history - #endif - --#if defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXMAC__) || defined(__WXMGL__) || defined(__WXX11__) -+#if defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXMAC__) || defined(__WXMGL__) || defined(__WXX11__) || defined(__WXQT__) - #include "resources/icons/app.xpm" - #endif - --- -2.26.0 - - -From f6bf52b28d6702629a153a4df2a0b74156d91cfd Mon Sep 17 00:00:00 2001 -From: Calvin Hill -Date: Sat, 23 May 2020 02:29:41 +0100 -Subject: codeblocks: Use /data/codeblocks to load resources.zip - - -diff --git a/src/src/app.cpp b/src/src/app.cpp -index 4ec80b1..a1370b7 100644 ---- a/src/src/app.cpp -+++ b/src/src/app.cpp -@@ -412,7 +412,11 @@ bool CodeBlocksApp::LoadConfig() - data = env; - } - -- data.append(_T("/share/codeblocks")); -+ #if defined(__HAIKU__) -+ data.append(_T("/data/codeblocks")); -+ #else -+ data.append(_T("/share/codeblocks")); -+ #endif - - // Make sure the path to our resources is always an absolute path, because resource loading - // would fail with a relative path if some part of the code changes the current working --- -2.26.0 - - diff --git a/dev-util/codeblocks/patches/codeblocks-25.03.patchset b/dev-util/codeblocks/patches/codeblocks-25.03.patchset new file mode 100644 index 000000000..327137f06 --- /dev/null +++ b/dev-util/codeblocks/patches/codeblocks-25.03.patchset @@ -0,0 +1,94 @@ +From 73e932983745bf071cc7e10fec607ab01b31d031 Mon Sep 17 00:00:00 2001 +From: Calvin Hill +Date: Tue, 12 May 2020 17:26:53 +0000 +Subject: codeblocks: Fix build by defining wxqt + + +diff --git a/src/src/app.h b/src/src/app.h +index 1107547..61acc07 100644 +--- a/src/src/app.h ++++ b/src/src/app.h +@@ -18,7 +18,7 @@ + #include // recent files history + #endif + +-#if defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXMAC__) || defined(__WXMGL__) || defined(__WXX11__) ++#if defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXMAC__) || defined(__WXMGL__) || defined(__WXX11__) || defined(__WXQT__) + #include "resources/icons/app.xpm" + #endif + +-- +2.51.0 + + +From 18c4659ada73488707a890df14f4e27cf506c75e Mon Sep 17 00:00:00 2001 +From: Calvin Hill +Date: Sat, 23 May 2020 02:29:41 +0100 +Subject: codeblocks: Use /data/codeblocks to load resources.zip + + +diff --git a/src/src/app.cpp b/src/src/app.cpp +index 50668cb..6979ae4 100644 +--- a/src/src/app.cpp ++++ b/src/src/app.cpp +@@ -404,7 +404,11 @@ bool CodeBlocksApp::LoadConfig() + data = env; + } + +- data.append(_T("/share/codeblocks")); ++ #if defined(__HAIKU__) ++ data.append(_T("/data/codeblocks")); ++ #else ++ data.append(_T("/share/codeblocks")); ++ #endif + + // Make sure the path to our resources is always an absolute path, because resource loading + // would fail with a relative path if some part of the code changes the current working +-- +2.51.0 + + +From f37b6038fae68529d17aef323077179bf97a7729 Mon Sep 17 00:00:00 2001 +From: Luc Schrijvers +Date: Tue, 21 Oct 2025 20:20:10 +0200 +Subject: define NO_AR + + +diff --git a/src/plugins/compilergcc/depslib/src/fileunix.c b/src/plugins/compilergcc/depslib/src/fileunix.c +index dca5473..5db0be5 100644 +--- a/src/plugins/compilergcc/depslib/src/fileunix.c ++++ b/src/plugins/compilergcc/depslib/src/fileunix.c +@@ -112,6 +112,7 @@ struct ar_hdr /* archive file member header - printable ascii */ + + # if defined( OS_QNX ) || \ + defined( OS_BEOS ) || \ ++ defined( __HAIKU__ ) || \ + defined( OS_MPEIX ) + # define NO_AR + # define HAVE_AR +-- +2.51.0 + + +From 2c0d1ccd761b1b42d95baa40f72a5cbcf0dc46c2 Mon Sep 17 00:00:00 2001 +From: Luc Schrijvers +Date: Wed, 22 Oct 2025 10:54:11 +0200 +Subject: manually set path for plugins + + +diff --git a/src/sdk/configmanager.cpp b/src/sdk/configmanager.cpp +index 78ab5f9..27e5c19 100644 +--- a/src/sdk/configmanager.cpp ++++ b/src/sdk/configmanager.cpp +@@ -1511,7 +1511,7 @@ void ConfigManager::InitPaths() + if (!wxDirExists(ConfigManager::plugin_path_global) && wxIsPlatform64Bit()) + { + // if standard-path does not exist and we are on 64-bit system, use lib64 instead +- ConfigManager::plugin_path_global = ((const wxStandardPaths&)wxStandardPaths::Get()).GetInstallPrefix() + _T("/lib64/codeblocks/plugins"); ++ ConfigManager::plugin_path_global = "/system/lib/codeblocks/plugins"; + } + #endif // __WXGTK__ + } +-- +2.51.0 +