diff options
| author | Sergey Torokhov <torokhov-s-a@yandex.ru> | 2025-11-24 00:09:47 +0300 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2025-12-04 11:58:53 +0000 |
| commit | f13089d0319cfdbeea87a3bad208a5b28180021b (patch) | |
| tree | c14b9239556a02d1acacf194f9c7ed44e3792346 /dev-util/codeblocks | |
| parent | 454cf6efc25f46a5fe14aeada501437420bb188f (diff) | |
| download | gentoo-f13089d0319cfdbeea87a3bad208a5b28180021b.tar.gz gentoo-f13089d0319cfdbeea87a3bad208a5b28180021b.tar.bz2 gentoo-f13089d0319cfdbeea87a3bad208a5b28180021b.zip | |
dev-util/codeblocks: 25.03-r2, fix boost-1.89.0 build
Closes: https://bugs.gentoo.org/964320
Signed-off-by: Sergey Torokhov <torokhov-s-a@yandex.ru>
Part-of: https://github.com/gentoo/gentoo/pull/44749
Closes: https://github.com/gentoo/gentoo/pull/44749
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-util/codeblocks')
| -rw-r--r-- | dev-util/codeblocks/codeblocks-25.03-r2.ebuild | 112 | ||||
| -rw-r--r-- | dev-util/codeblocks/codeblocks-9999.ebuild | 2 | ||||
| -rw-r--r-- | dev-util/codeblocks/files/codeblocks-25.03_fix_boost-1.89.0.patch | 177 |
3 files changed, 290 insertions, 1 deletions
diff --git a/dev-util/codeblocks/codeblocks-25.03-r2.ebuild b/dev-util/codeblocks/codeblocks-25.03-r2.ebuild new file mode 100644 index 000000000000..afeb39a2dbe5 --- /dev/null +++ b/dev-util/codeblocks/codeblocks-25.03-r2.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" + +inherit autotools flag-o-matic multiprocessing wxwidgets xdg + +REV=13518 +REV_DATE="2024-05-05 20:30:28" +FP_NAME=fortranproject +FP_REV=378 + +DESCRIPTION="The open source, cross platform, free C, C++ and Fortran IDE" +HOMEPAGE="https://www.codeblocks.org/" +SRC_URI="https://downloads.sourceforge.net/${PN}/${P/-/_}.tar.xz -> ${P}.tar.xz" +S="${WORKDIR}/${P/-/_}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" + +IUSE="fortran contrib debug" + +BDEPEND="virtual/pkgconfig" + +RDEPEND=" + app-arch/zip + dev-libs/glib:2 + >=dev-libs/tinyxml-2.6.2-r3 + >=dev-util/astyle-3.1-r2:0= + x11-libs/gtk+:3 + x11-libs/wxGTK:${WX_GTK_VER}=[X] + contrib? ( + app-arch/bzip2 + app-text/hunspell:= + media-libs/fontconfig + virtual/zlib:= + ) +" + +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto + contrib? ( dev-libs/boost:= ) +" + +PATCHES=( + "${FILESDIR}/${P}_env.patch" + "${FILESDIR}/${PN}-20.03_p13518_FortranProject-r378-autotools-build.patch" + "${FILESDIR}/${P}_fix_boost-1.89.0.patch" +) + +src_prepare() { + default + + # Let's make the autorevision work. + echo "m4_define([SVN_REV], ${REV})" > revision.m4 + echo "m4_define([SVN_DATE], ${REV_DATE})" >> revision.m4 + + eautoreconf +} + +src_configure() { + # Bug 858338 + append-flags -fno-strict-aliasing + + setup-wxwidgets + + # USE="contrib -fortran" setup: + use fortran || CONF_WITH_LST=$(use_with contrib contrib-plugins all,-FortranProject) + # USE="contrib fortran" setup: + use fortran && CONF_WITH_LST=$(use_with contrib contrib-plugins all) + # USE="-contrib fortran" setup: + use contrib || CONF_WITH_LST=$(use_with fortran contrib-plugins FortranProject) + + local myeconfargs=( + --disable-pch + --disable-static + $(use_with contrib boost-libdir "${ESYSROOT}/usr/$(get_libdir)") + $(use_enable debug) + ${CONF_WITH_LST} + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + if use contrib; then + if (( $(get_makeopts_jobs) > 8 )); then + emake -j8 # Bug 930819 + else + emake + fi + else + emake + fi +} + +src_install() { + default + find "${ED}" -type f -name '*.la' -delete || die +} + +pkg_postinst() { + xdg_pkg_postinst +} + +pkg_postrm() { + xdg_pkg_postrm +} diff --git a/dev-util/codeblocks/codeblocks-9999.ebuild b/dev-util/codeblocks/codeblocks-9999.ebuild index ecdb9d13bf3a..a18c4f458d49 100644 --- a/dev-util/codeblocks/codeblocks-9999.ebuild +++ b/dev-util/codeblocks/codeblocks-9999.ebuild @@ -28,7 +28,6 @@ RDEPEND="app-arch/zip contrib? ( app-arch/bzip2 app-text/hunspell:= - dev-libs/boost:= media-libs/fontconfig virtual/zlib:= )" @@ -36,6 +35,7 @@ RDEPEND="app-arch/zip DEPEND=" ${RDEPEND} x11-base/xorg-proto + contrib? ( dev-libs/boost:= ) " PATCHES=( "${FILESDIR}/${P}-nodebug.diff" ) diff --git a/dev-util/codeblocks/files/codeblocks-25.03_fix_boost-1.89.0.patch b/dev-util/codeblocks/files/codeblocks-25.03_fix_boost-1.89.0.patch new file mode 100644 index 000000000000..4c07fdc7c3f9 --- /dev/null +++ b/dev-util/codeblocks/files/codeblocks-25.03_fix_boost-1.89.0.patch @@ -0,0 +1,177 @@ +The patch fixes build of NassiShneiderman plugin with boost-1.89.0 +and is based on upstream patches: +https://sourceforge.net/p/codeblocks/code/13752/ +https://sourceforge.net/p/codeblocks/code/13760/ + +Gentoo issue: https://bugs.gentoo.org/964320 +Upstream issue: https://sourceforge.net/p/codeblocks/tickets/1563/ + +Index: configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -15,7 +15,6 @@ + m4_include([m4/acinclude.m4]) + m4_include([m4/ax_cxx_compile_stdcxx.m4]) + m4_include([m4/ax_boost_base.m4]) +-m4_include([m4/ax_boost_system.m4]) + + CODEBLOCKS_CHECK_DEBUG + +@@ -235,7 +234,6 @@ + if test "x$BUILD_NASSISHNEIDERMAN_TRUE" = "x" ; then + dnl Check whether boost is installed + AX_BOOST_BASE +- AX_BOOST_SYSTEM + fi + + CB_GLIB2_CFLAGS="$GLIB2_CFLAGS" +Index: m4/ax_boost_system.m4 +=================================================================== +--- a/m4/ax_boost_system.m4 ++++ b/m4/ax_boost_system.m4 +@@ -1,121 +0,0 @@ +-# =========================================================================== +-# https://www.gnu.org/software/autoconf-archive/ax_boost_system.html +-# =========================================================================== +-# +-# SYNOPSIS +-# +-# AX_BOOST_SYSTEM +-# +-# DESCRIPTION +-# +-# Test for System library from the Boost C++ libraries. The macro requires +-# a preceding call to AX_BOOST_BASE. Further documentation is available at +-# <http://randspringer.de/boost/index.html>. +-# +-# This macro calls: +-# +-# AC_SUBST(BOOST_SYSTEM_LIB) +-# +-# And sets: +-# +-# HAVE_BOOST_SYSTEM +-# +-# LICENSE +-# +-# Copyright (c) 2008 Thomas Porschberg <thomas@randspringer.de> +-# Copyright (c) 2008 Michael Tindal +-# Copyright (c) 2008 Daniel Casimiro <dan.casimiro@gmail.com> +-# +-# Copying and distribution of this file, with or without modification, are +-# permitted in any medium without royalty provided the copyright notice +-# and this notice are preserved. This file is offered as-is, without any +-# warranty. +- +-#serial 19 +- +-AC_DEFUN([AX_BOOST_SYSTEM], +-[ +- AC_ARG_WITH([boost-system], +- AS_HELP_STRING([--with-boost-system@<:@=special-lib@:>@], +- [use the System library from boost - it is possible to specify a certain library for the linker +- e.g. --with-boost-system=boost_system-gcc-mt ]), +- [ +- if test "$withval" = "no"; then +- want_boost="no" +- elif test "$withval" = "yes"; then +- want_boost="yes" +- ax_boost_user_system_lib="" +- else +- want_boost="yes" +- ax_boost_user_system_lib="$withval" +- fi +- ], +- [want_boost="yes"] +- ) +- +- if test "x$want_boost" = "xyes"; then +- AC_REQUIRE([AC_PROG_CC]) +- AC_REQUIRE([AC_CANONICAL_BUILD]) +- CPPFLAGS_SAVED="$CPPFLAGS" +- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" +- export CPPFLAGS +- +- LDFLAGS_SAVED="$LDFLAGS" +- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" +- export LDFLAGS +- +- AC_CACHE_CHECK(whether the Boost::System library is available, +- ax_cv_boost_system, +- [AC_LANG_PUSH([C++]) +- CXXFLAGS_SAVE=$CXXFLAGS +- CXXFLAGS= +- +- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <boost/system/error_code.hpp>]], +- [[boost::system::error_category *a = 0;]])], +- ax_cv_boost_system=yes, ax_cv_boost_system=no) +- CXXFLAGS=$CXXFLAGS_SAVE +- AC_LANG_POP([C++]) +- ]) +- if test "x$ax_cv_boost_system" = "xyes"; then +- AC_SUBST(BOOST_CPPFLAGS) +- +- AC_DEFINE(HAVE_BOOST_SYSTEM,,[define if the Boost::System library is available]) +- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'` +- +- LDFLAGS_SAVE=$LDFLAGS +- if test "x$ax_boost_user_system_lib" = "x"; then +- for libextension in `ls -r $BOOSTLIBDIR/libboost_system* 2>/dev/null | sed 's,.*/lib,,' | sed 's,\..*,,'` ; do +- ax_lib=${libextension} +- AC_CHECK_LIB($ax_lib, exit, +- [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break], +- [link_system="no"]) +- done +- if test "x$link_system" != "xyes"; then +- for libextension in `ls -r $BOOSTLIBDIR/boost_system* 2>/dev/null | sed 's,.*/,,' | sed -e 's,\..*,,'` ; do +- ax_lib=${libextension} +- AC_CHECK_LIB($ax_lib, exit, +- [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break], +- [link_system="no"]) +- done +- fi +- +- else +- for ax_lib in $ax_boost_user_system_lib boost_system-$ax_boost_user_system_lib; do +- AC_CHECK_LIB($ax_lib, exit, +- [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break], +- [link_system="no"]) +- done +- +- fi +- if test "x$ax_lib" = "x"; then +- AC_MSG_ERROR(Could not find a version of the library!) +- fi +- if test "x$link_system" = "xno"; then +- AC_MSG_ERROR(Could not link against $ax_lib !) +- fi +- fi +- +- CPPFLAGS="$CPPFLAGS_SAVED" +- LDFLAGS="$LDFLAGS_SAVED" +- fi +-]) +Index: src/plugins/contrib/NassiShneiderman/Makefile.am +=================================================================== +--- a/src/plugins/contrib/NassiShneiderman/Makefile.am ++++ b/src/plugins/contrib/NassiShneiderman/Makefile.am +@@ -1,8 +1,7 @@ + AM_CPPFLAGS = $(WX_CXXFLAGS) \ + -I$(top_srcdir)/src/include \ + -I$(top_srcdir)/src/sdk/wxscintilla/include \ +- $(BOOST_CPPFLAGS) \ +- -DBOOST_SYSTEM_NO_DEPRECATED ++ $(BOOST_CPPFLAGS) + + pluginlibdir = $(pkglibdir)/plugins + +@@ -10,7 +9,7 @@ + + libNassiShneiderman_la_LDFLAGS = @MODULE_SHARED_LDFLAGS@ -version-info 0:1:0 -no-undefined -avoid-version + +-libNassiShneiderman_la_LIBADD = ../../../sdk/libcodeblocks.la $(WX_LIBS) $(BOOST_LDFLAGS) $(BOOST_SYSTEM_LIB) ++libNassiShneiderman_la_LIBADD = ../../../sdk/libcodeblocks.la $(WX_LIBS) + + libNassiShneiderman_la_SOURCES = bricks.cpp \ + cbEditorPanel.cpp \ |
