pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/cross/ppc-morphos-gcc-11



Module Name:    pkgsrc
Committed By:   js
Date:           Mon Jun  9 16:00:48 UTC 2025

Modified Files:
        pkgsrc/cross/ppc-morphos-gcc-11: Makefile PLIST distinfo
Added Files:
        pkgsrc/cross/ppc-morphos-gcc-11/patches:
            patch-gcc-config-rs6000-rs6000-logue.c patch-gcc-objc-objc-act.c

Log Message:
Several fixes for cross/ppc-morphos-gcc-11

* Fix -latomic not being found
* Fix CR clobbering r12 in __saveds functions, killing the libbase
* Make all ObjC methods __saveds (experimental, might be used by ObjFW in the
  future)


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 pkgsrc/cross/ppc-morphos-gcc-11/Makefile
cvs rdiff -u -r1.2 -r1.3 pkgsrc/cross/ppc-morphos-gcc-11/PLIST
cvs rdiff -u -r1.6 -r1.7 pkgsrc/cross/ppc-morphos-gcc-11/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-config-rs6000-rs6000-logue.c \
    pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-objc-objc-act.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/cross/ppc-morphos-gcc-11/Makefile
diff -u pkgsrc/cross/ppc-morphos-gcc-11/Makefile:1.8 pkgsrc/cross/ppc-morphos-gcc-11/Makefile:1.9
--- pkgsrc/cross/ppc-morphos-gcc-11/Makefile:1.8        Sat May 24 22:44:01 2025
+++ pkgsrc/cross/ppc-morphos-gcc-11/Makefile    Mon Jun  9 16:00:48 2025
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.8 2025/05/24 22:44:01 js Exp $
+# $NetBSD: Makefile,v 1.9 2025/06/09 16:00:48 js Exp $
 
 DISTNAME=      sdk-source-20230510
+PKGREVISION=   1
 PKGNAME=       ppc-morphos-gcc-11-11.3.0
 CATEGORIES=    cross
 MASTER_SITES=  https://morphos-team.net/files/src/sdk/
@@ -61,6 +62,8 @@ pre-patch:
        ${RUN} cd ${WRKSRC} && ${PATCH} -p1 <../fix-genericize_if_stmt-ice.diff
        ${RUN} cd ${WRKSRC} && ${PATCH} -p1 <../morphos-std-filesystem-path.diff
        ${RUN} cd ${WRKSRC} && ${PATCH} -p1 <../fix-fenv-for-crossbuild.diff
+       ${RUN} find ${WRKSRC} -name configure -print0 | xargs -0 -r perl -i.orig -p -e 
"s|toolexecdir='\\\$$\(libdir\)/gcc/\\\$$\(target_alias\)'|toolexecdir='\\\$$(libdir)/gcc-lib/\\\$$(target_alias)'|g;"
+       ${RUN} find gcc-11.5.0 -name Makefile.in -print0 | xargs -0 -r perl -i.orig -p -e "s|= \\\$$\(libexecdir\)/gcc/\\\$$\(real_target_noncanonical\)|= 
\\\$$(libexecdir)/gcc-lib/\\\$$(real_target_noncanonical)|g;s|= \\\$$\(libdir\)/gcc/\\\$$\(target_noncanonical\)|= \\\$$(libdir)/gcc-lib/\\\$$(target_noncanonical)|g;"
 
 post-patch:
        # Change /gg to ${PREFIX}/gg

Index: pkgsrc/cross/ppc-morphos-gcc-11/PLIST
diff -u pkgsrc/cross/ppc-morphos-gcc-11/PLIST:1.2 pkgsrc/cross/ppc-morphos-gcc-11/PLIST:1.3
--- pkgsrc/cross/ppc-morphos-gcc-11/PLIST:1.2   Wed Mar 27 23:26:29 2024
+++ pkgsrc/cross/ppc-morphos-gcc-11/PLIST       Mon Jun  9 16:00:48 2025
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.2 2024/03/27 23:26:29 js Exp $
+@comment $NetBSD: PLIST,v 1.3 2025/06/09 16:00:48 js Exp $
 gg/bin/ppc-morphos-c++-11
 gg/bin/ppc-morphos-cpp-11
 gg/bin/ppc-morphos-g++-11
@@ -938,6 +938,7 @@ gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/install-tools/mkheaders
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/install-tools/mkheaders.conf
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/install-tools/mkinstalldirs
+gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libatomic.la
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/crtbegin.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/crtbeginS.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/crtbeginT.o
@@ -945,6 +946,7 @@ gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/crtendS.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/ecrti.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/ecrtn.o
+gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libatomic.la
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libgcc.a
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libgcov.a
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/crtbegin.o
@@ -954,6 +956,7 @@ gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/crtendS.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/ecrti.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/ecrtn.o
+gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/libatomic.la
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/libgcc.a
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/libgcov.a
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libb32/libnix/libobjc.la
@@ -977,6 +980,7 @@ gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/crtendS.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/ecrti.o
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/ecrtn.o
+gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/libatomic.la
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/libgcc.a
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/libgcov.a
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/libnix/libobjc.la
@@ -1444,11 +1448,7 @@ gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/plugin/include/xcoff.h
 gg/lib/gcc-lib/ppc-morphos/${PKGVERSION}/plugin/include/xcoffout.h
 gg/lib/gcc/ppc-morphos/${PKGVERSION}/g++-mapper-server
-gg/lib/gcc/ppc-morphos/${PKGVERSION}/libatomic.la
-gg/lib/gcc/ppc-morphos/${PKGVERSION}/libb32/libatomic.la
-gg/lib/gcc/ppc-morphos/${PKGVERSION}/libb32/libnix/libatomic.la
 gg/lib/gcc/ppc-morphos/${PKGVERSION}/liblto_plugin.la
-gg/lib/gcc/ppc-morphos/${PKGVERSION}/libnix/libatomic.la
 gg/lib/gcc/ppc-morphos/${PKGVERSION}/plugin/libcc1plugin.la
 gg/lib/gcc/ppc-morphos/${PKGVERSION}/plugin/libcp1plugin.la
 gg/lib/libcc1.la

Index: pkgsrc/cross/ppc-morphos-gcc-11/distinfo
diff -u pkgsrc/cross/ppc-morphos-gcc-11/distinfo:1.6 pkgsrc/cross/ppc-morphos-gcc-11/distinfo:1.7
--- pkgsrc/cross/ppc-morphos-gcc-11/distinfo:1.6        Mon Apr 21 22:43:57 2025
+++ pkgsrc/cross/ppc-morphos-gcc-11/distinfo    Mon Jun  9 16:00:48 2025
@@ -1,9 +1,11 @@
-$NetBSD: distinfo,v 1.6 2025/04/21 22:43:57 js Exp $
+$NetBSD: distinfo,v 1.7 2025/06/09 16:00:48 js Exp $
 
 BLAKE2s (sdk-source-20230510.tar.xz) = 777febe845ddbf50cbaec55c2d198085996a5064bc3c4128f44dfe79355d765e
 SHA512 (sdk-source-20230510.tar.xz) = badf3e678d514713ece14779dcce5fe78f3a849c73718e05b3317c1c766fb9879368c8fd58f9441c905023a660e893cf0eec405d2c133e4c6d11fe39acc50418
 Size (sdk-source-20230510.tar.xz) = 588551012 bytes
 SHA1 (patch-config_override.m4) = 1ee0186b006a987dc57151a9d112654eabd24db9
+SHA1 (patch-gcc-config-rs6000-rs6000-logue.c) = 1d3f944e77367ce96b4ab2d099a4276939121650
+SHA1 (patch-gcc-objc-objc-act.c) = c030f26a8a83b9f41165bb6f7f0617dd77b41a66
 SHA1 (patch-gcc_config_host-darwin.c) = 62d75a4ce61a0ae42a756c9fd1476a329bb44600
 SHA1 (patch-gcc_config_rs6000_morphos.h) = c788e480f3f510b61292f5b1ec5b84646b33ab93
 SHA1 (patch-gcc_doc_extend.texi) = 34b21725886883ad3ad974dbc80d877425fa1220

Added files:

Index: pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-config-rs6000-rs6000-logue.c
diff -u /dev/null pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-config-rs6000-rs6000-logue.c:1.1
--- /dev/null   Mon Jun  9 16:00:48 2025
+++ pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-config-rs6000-rs6000-logue.c      Mon Jun  9 16:00:48 2025
@@ -0,0 +1,44 @@
+$NetBSD: patch-gcc-config-rs6000-rs6000-logue.c,v 1.1 2025/06/09 16:00:48 js Exp $
+
+Don't use r12 to store CR when using saveds, as __restore_r13 will need the
+passed r12.
+
+--- gcc/config/rs6000/rs6000-logue.c.orig      2025-06-01 00:58:21.923156281 +0000
++++ gcc/config/rs6000/rs6000-logue.c
+@@ -3343,6 +3343,16 @@ rs6000_emit_prologue (void)
+       emit_insn (gen_hashst (mem, reg0));
+     }
+ 
++  /* If we need to save CR, put it into r12 or r11.  Choose r12 except when
++     r12 will be needed by out-of-line gpr save.  */
++  if (DEFAULT_ABI == ABI_AIX
++      && !(strategy & (SAVE_INLINE_GPRS | SAVE_NOINLINE_GPRS_SAVES_LR)))
++    cr_save_regno = 11;
++  else if (DEFAULT_ABI == ABI_ELFv2)
++    cr_save_regno = 11;
++  else
++    cr_save_regno = 12;
++
+ #ifdef TARGET_BASEREL
+   if (info->baserel_save_p && TARGET_BASEREL)
+     {
+@@ -3357,17 +3367,10 @@ rs6000_emit_prologue (void)
+       reg = gen_rtx_REG (reg_mode, 13);
+       insn = emit_move_insn (mem, reg);
+       rs6000_frame_related (insn, sp_reg_rtx, info->total_size, NULL_RTX, NULL_RTX);
++
++      cr_save_regno = 11;
+     }
+ #endif
+-  /* If we need to save CR, put it into r12 or r11.  Choose r12 except when
+-     r12 will be needed by out-of-line gpr save.  */
+-  if (DEFAULT_ABI == ABI_AIX
+-      && !(strategy & (SAVE_INLINE_GPRS | SAVE_NOINLINE_GPRS_SAVES_LR)))
+-    cr_save_regno = 11;
+-  else if (DEFAULT_ABI == ABI_ELFv2)
+-    cr_save_regno = 11;
+-  else
+-    cr_save_regno = 12;
+   if (!WORLD_SAVE_P (info)
+       && info->cr_save_p
+       && REGNO (frame_reg_rtx) != cr_save_regno
Index: pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-objc-objc-act.c
diff -u /dev/null pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-objc-objc-act.c:1.1
--- /dev/null   Mon Jun  9 16:00:48 2025
+++ pkgsrc/cross/ppc-morphos-gcc-11/patches/patch-gcc-objc-objc-act.c   Mon Jun  9 16:00:48 2025
@@ -0,0 +1,20 @@
+$NetBSD: patch-gcc-objc-objc-act.c,v 1.1 2025/06/09 16:00:48 js Exp $
+
+Make all ObjC methods saveds.
+
+--- gcc/objc/objc-act.c.orig   2025-05-31 23:13:39.128573359 +0200
++++ gcc/objc/objc-act.c        2025-05-31 23:13:44.450437107 +0200
+@@ -5215,6 +5215,13 @@
+   else
+     ftype = build_function_type_vec (return_type, argtypes);
+ 
++#ifdef TARGET_BASEREL
++  if (TARGET_BASEREL)
++    TYPE_ATTRIBUTES (ftype) = tree_cons (get_identifier ("saveds"),
++                                       NULL_TREE,
++                                       TYPE_ATTRIBUTES (ftype));
++#endif
++
+   release_tree_vector (argtypes);
+   return ftype;
+ }



Home | Main Index | Thread Index | Old Index