summaryrefslogtreecommitdiffstats
path: root/source/d/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'source/d/gcc')
-rwxr-xr-xsource/d/gcc/gcc.SlackBuild49
-rw-r--r--source/d/gcc/patches/gcc-no_fixincludes.diff32
-rw-r--r--source/d/gcc/slack-desc.gcc-gm219
3 files changed, 79 insertions, 21 deletions
diff --git a/source/d/gcc/gcc.SlackBuild b/source/d/gcc/gcc.SlackBuild
index 56ae24107..c6753a78b 100755
--- a/source/d/gcc/gcc.SlackBuild
+++ b/source/d/gcc/gcc.SlackBuild
@@ -2,7 +2,7 @@
# GCC package build script (written by volkerdi@slackware.com)
#
# Copyright 2003, 2004 Slackware Linux, Inc., Concord, California, USA
-# Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2021, 2022 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2021, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -57,7 +57,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gcc
SRCVER=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
VERSION=$(echo $SRCVER | cut -f 1 -d _)
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# How many jobs to run in parallel:
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -84,6 +84,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "gcc-objc-$VERSION-$ARCH-$BUILD.txz"
echo "gcc-go-$VERSION-$ARCH-$BUILD.txz"
echo "gcc-gdc-$VERSION-$ARCH-$BUILD.txz"
+ echo "gcc-gm2-$VERSION-$ARCH-$BUILD.txz"
exit 0
fi
@@ -143,13 +144,14 @@ PKG4=$TMP/package-gcc-gnat
PKG6=$TMP/package-gcc-objc
PKG8=$TMP/package-gcc-go
PKG10=$TMP/package-gcc-gdc
+PKG11=$TMP/package-gcc-gm2
# Clear the build locations:
-rm -rf $PKG{1,2,3,4,6,8,10}
-mkdir -p $PKG{1,2,3,4,6,8,10}/usr/doc/gcc-$VERSION
+rm -rf $PKG{1,2,3,4,6,8,10,11}
+mkdir -p $PKG{1,2,3,4,6,8,10,11}/usr/doc/gcc-$VERSION
# Insert package descriptions:
-mkdir -p $PKG{1,2,3,4,6,8,9,10}/install
+mkdir -p $PKG{1,2,3,4,6,8,9,10,11}/install
cat $CWD/slack-desc.gcc > $PKG1/install/slack-desc
cat $CWD/slack-desc.gcc-g++ > $PKG2/install/slack-desc
cat $CWD/slack-desc.gcc-gfortran > $PKG3/install/slack-desc
@@ -157,6 +159,7 @@ cat $CWD/slack-desc.gcc-gnat > $PKG4/install/slack-desc
cat $CWD/slack-desc.gcc-objc > $PKG6/install/slack-desc
cat $CWD/slack-desc.gcc-go > $PKG8/install/slack-desc
cat $CWD/slack-desc.gcc-gdc > $PKG10/install/slack-desc
+cat $CWD/slack-desc.gcc-gm2 > $PKG11/install/slack-desc
cd gcc-$SRCVER || exit 1
@@ -259,6 +262,17 @@ mkdir -p $PKG10/usr/doc/gcc-${VERSION}/gcc/d
fi
)
+mkdir -p $PKG11/usr/doc/gcc-${VERSION}/gcc/m2
+( cd gcc/m2 || exit 0
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG11/usr/doc/gcc-${VERSION}/gcc/m2/ChangeLog
+ touch -r ChangeLog $PKG11/usr/doc/gcc-${VERSION}/gcc/m2/ChangeLog
+ fi
+ cp -a \
+ COPYING* NEWS* README* \
+ $PKG11/usr/doc/gcc-${VERSION}/gcc/m2
+)
+
mkdir -p $PKG3/usr/doc/gcc-${VERSION}/libgfortran
( cd libgfortran || exit 0
if [ -r ChangeLog ]; then
@@ -331,7 +345,7 @@ mkdir -p $PKG2/usr/doc/gcc-${VERSION}/libstdc++-v3
--infodir=/usr/info \
--enable-shared \
--enable-bootstrap \
- --enable-languages=ada,c,c++,d,fortran,go,lto,objc,obj-c++ \
+ --enable-languages=ada,c,c++,d,fortran,go,lto,m2,objc,obj-c++ \
--enable-threads=posix \
--enable-checking=release \
--enable-objc-gc \
@@ -602,6 +616,26 @@ rm -f $PKG1/{,usr/}lib${LIBDIRSUFFIX}/*.la
mv $PKG1/usr/man/man1/gdc.1.gz usr/man/man1
) || exit 1
+# gcc-gm2:
+( cd $PKG11
+ mkdir -p usr/bin
+ mv $PKG1/usr/bin/gm2 $PKG1/usr/bin/*-gm2 usr/bin
+ mkdir -p usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/plugin
+ mv $PKG1/usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/m2 usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION
+ mv $PKG1/usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/plugin/m2* usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/plugin
+ mv $PKG1/usr/lib${LIBDIRSUFFIX}/libm2* usr/lib${LIBDIRSUFFIX}
+ # As a rule, we don't package static libraries:
+ ( cd usr/lib${LIBDIRSUFFIX}
+ for library in libm2*.so ; do
+ rm -f $(basename $library .so).a
+ done
+ )
+ mkdir -p usr/libexec/gcc/$TARGET/$VERSION
+ mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/cc1gm2 usr/libexec/gcc/$TARGET/$VERSION
+ mkdir -p usr/man/man1
+ mv $PKG1/usr/man/man1/gm2.1.gz usr/man/man1
+) || exit 1
+
# Generate packages:
( cd $PKG1
makepkg -l y -c n $TMP/gcc-$VERSION-$ARCH-$BUILD.txz )
@@ -617,8 +651,9 @@ rm -f $PKG1/{,usr/}lib${LIBDIRSUFFIX}/*.la
makepkg -l y -c n $TMP/gcc-go-$VERSION-$ARCH-$BUILD.txz )
( cd $PKG10
makepkg -l y -c n $TMP/gcc-gdc-$VERSION-$ARCH-$BUILD.txz )
+( cd $PKG11
+ makepkg -l y -c n $TMP/gcc-gm2-$VERSION-$ARCH-$BUILD.txz )
echo
echo "Slackware GCC package build complete!"
echo
-
diff --git a/source/d/gcc/patches/gcc-no_fixincludes.diff b/source/d/gcc/patches/gcc-no_fixincludes.diff
index e152e0821..8307fbfc9 100644
--- a/source/d/gcc/patches/gcc-no_fixincludes.diff
+++ b/source/d/gcc/patches/gcc-no_fixincludes.diff
@@ -1,19 +1,23 @@
---- ./gcc/Makefile.in.orig 2018-03-09 09:24:44.000000000 -0600
-+++ ./gcc/Makefile.in 2018-05-02 12:25:43.958002771 -0500
-@@ -3004,9 +3004,9 @@
- chmod a+r $${fix_dir}/limits.h; \
+--- ./gcc/Makefile.in.orig 2023-04-26 12:25:33.525797045 -0500
++++ ./gcc/Makefile.in 2023-04-26 13:40:12.282459243 -0500
+@@ -3202,11 +3202,11 @@
+ cp $(srcdir)/gsyslimits.h $${include_dir}/syslimits.h; \
done
# Install the README
-- rm -f include-fixed/README
-- cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README
-- chmod a+r include-fixed/README
-+# rm -f include-fixed/README
-+# cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README
-+# chmod a+r include-fixed/README
+- if [ x$(STMP_FIXINC) != x ]; then \
+- rm -f include-fixed/README; \
+- cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README; \
+- chmod a+r include-fixed/README; \
+- fi;
++# if [ x$(STMP_FIXINC) != x ]; then \
++# rm -f include-fixed/README; \
++# cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README; \
++# chmod a+r include-fixed/README; \
++# fi;
$(STAMP) $@
.PHONY: install-gcc-tooldir
-@@ -3087,10 +3087,7 @@
+@@ -3287,10 +3287,7 @@
(TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); ${PWD_COMMAND}`; \
SHELL='$(SHELL)'; MACRO_LIST=`${PWD_COMMAND}`/macro_list ; \
gcc_dir=`${PWD_COMMAND}` ; \
@@ -22,6 +26,6 @@
- $(SHELL) ./fixinc.sh "$${gcc_dir}/$${fix_dir}" \
- $(BUILD_SYSTEM_HEADER_DIR) $(OTHER_FIXINCLUDES_DIRS) ); \
+ export TARGET_MACHINE srcdir SHELL MACRO_LIST ); \
- rm -f $${fix_dir}/syslimits.h; \
- if [ -f $${fix_dir}/limits.h ]; then \
- mv $${fix_dir}/limits.h $${fix_dir}/syslimits.h; \
+ done; \
+ fi
+ $(STAMP) stmp-fixinc
diff --git a/source/d/gcc/slack-desc.gcc-gm2 b/source/d/gcc/slack-desc.gcc-gm2
new file mode 100644
index 000000000..a06b61475
--- /dev/null
+++ b/source/d/gcc/slack-desc.gcc-gm2
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gcc-gm2: gcc-gm2 (Modula-2 support for GCC)
+gcc-gm2:
+gcc-gm2: Modula-2 support for the GNU Compiler Collection.
+gcc-gm2:
+gcc-gm2: Modula-2 language support covering ISO/IEC 10514-1, PIM2, PIM3, and
+gcc-gm2: PIM4 dialects together with a complete set of ISO/IEC 10514-1 and PIM
+gcc-gm2: libraries.
+gcc-gm2:
+gcc-gm2:
+gcc-gm2:
+gcc-gm2: