Re-enable C++ modules tests on PPC64LE
The latest GNU toolchain in Fedora 38 [1] no longer seems to cause some of the modules tests to fail on PPC64LE [2], so we can remove that patch now. * build2-disable-test-cc-modules-ppc64le.patch: delete * build2.spec: remove ppc64le modules tests patch and update changelog [1] https://fedoraproject.org/wiki/Changes/GNUToolchainF38 [2] https://lists.build2.org/archives/users/2021-November/000921.html
This commit is contained in:
parent
c5058c3ce3
commit
2051d00248
@ -1,116 +0,0 @@
|
|||||||
diff --git a/tests/cc/modules/modules.testscript b/tests/cc/modules/modules.testscript
|
|
||||||
index 681238a..054ecd9 100644
|
|
||||||
--- a/tests/cc/modules/modules.testscript
|
|
||||||
+++ b/tests/cc/modules/modules.testscript
|
|
||||||
@@ -190,16 +190,16 @@ $* test &*.d &?*.ii* <'exe{test}: cxx{driver} mxx{core}' 2>>EOE != 0
|
|
||||||
info: consider specifying module name with cxx.module_name
|
|
||||||
EOE
|
|
||||||
|
|
||||||
-: library
|
|
||||||
-:
|
|
||||||
-: Test importing a module from a library.
|
|
||||||
-:
|
|
||||||
-ln -s ../core.mxx ../core.cxx ../driver.cxx ./;
|
|
||||||
-$* test clean <<EOI
|
|
||||||
- ./: lib{foo} exe{test} # Full build.
|
|
||||||
- exe{test}: cxx{driver} lib{foo}
|
|
||||||
- lib{foo}: {mxx cxx}{core}
|
|
||||||
- EOI
|
|
||||||
+# : library
|
|
||||||
+# :
|
|
||||||
+# : Test importing a module from a library.
|
|
||||||
+# :
|
|
||||||
+# ln -s ../core.mxx ../core.cxx ../driver.cxx ./;
|
|
||||||
+# $* test clean <<EOI
|
|
||||||
+# ./: lib{foo} exe{test} # Full build.
|
|
||||||
+# exe{test}: cxx{driver} lib{foo}
|
|
||||||
+# lib{foo}: {mxx cxx}{core}
|
|
||||||
+# EOI
|
|
||||||
|
|
||||||
: module-marker
|
|
||||||
:
|
|
||||||
@@ -286,17 +286,17 @@ $* test clean <<EOI
|
|
||||||
EOI
|
|
||||||
$* test clean <'exe{test}: cxx{driver core} mxx{core base extra foo}'
|
|
||||||
|
|
||||||
- : library
|
|
||||||
- :
|
|
||||||
- ln -s ../base.mxx ../extra.mxx ../foo.mxx ../../core.mxx ../../core.cxx ./;
|
|
||||||
- cat <<EOI >=driver.cxx;
|
|
||||||
- import foo;
|
|
||||||
- int main (int argc, char*[]) {return f (g (argc));}
|
|
||||||
- EOI
|
|
||||||
- $* test clean <<EOI
|
|
||||||
- exe{test}: cxx{driver} mxx{foo} lib{foo}
|
|
||||||
- lib{foo}: mxx{core base extra} cxx{core}
|
|
||||||
- EOI
|
|
||||||
+ # : library
|
|
||||||
+ # :
|
|
||||||
+ # ln -s ../base.mxx ../extra.mxx ../foo.mxx ../../core.mxx ../../core.cxx ./;
|
|
||||||
+ # cat <<EOI >=driver.cxx;
|
|
||||||
+ # import foo;
|
|
||||||
+ # int main (int argc, char*[]) {return f (g (argc));}
|
|
||||||
+ # EOI
|
|
||||||
+ # $* test clean <<EOI
|
|
||||||
+ # exe{test}: cxx{driver} mxx{foo} lib{foo}
|
|
||||||
+ # lib{foo}: mxx{core base extra} cxx{core}
|
|
||||||
+ # EOI
|
|
||||||
}
|
|
||||||
|
|
||||||
: import
|
|
||||||
@@ -364,29 +364,29 @@ $* test clean <<EOI
|
|
||||||
bmie{foo-core}: mxx{foo-core}
|
|
||||||
EOI
|
|
||||||
|
|
||||||
-: symexport
|
|
||||||
-:
|
|
||||||
-: Test the __symexport feature.
|
|
||||||
-:
|
|
||||||
-cat <<EOI >=core.mxx;
|
|
||||||
- export module foo.core;
|
|
||||||
-
|
|
||||||
- export __symexport int f (int);
|
|
||||||
-
|
|
||||||
- __symexport int g_impl (int i) {return i - 1;}
|
|
||||||
- export __symexport inline int g (int i) {return g_impl (i);}
|
|
||||||
- EOI
|
|
||||||
-ln -s ../core.cxx core-f.cxx;
|
|
||||||
-cat <<EOI >=core-g.cxx;
|
|
||||||
- module foo.core;
|
|
||||||
- int g_impl (int i) {return i - 1;}
|
|
||||||
- EOI
|
|
||||||
-cat <<EOI >=driver.cxx;
|
|
||||||
- import foo.core;
|
|
||||||
- int main (int argc, char*[]) {return f (argc) + g (argc);}
|
|
||||||
- EOI
|
|
||||||
-$* test clean <<EOI
|
|
||||||
- ./: lib{foo} exe{test} # Full build.
|
|
||||||
- exe{test}: cxx{driver} lib{foo}
|
|
||||||
- lib{foo}: mxx{core} cxx{core-f} # @@ VC: core-g
|
|
||||||
- EOI
|
|
||||||
+# : symexport
|
|
||||||
+# :
|
|
||||||
+# : Test the __symexport feature.
|
|
||||||
+# :
|
|
||||||
+# cat <<EOI >=core.mxx;
|
|
||||||
+# export module foo.core;
|
|
||||||
+
|
|
||||||
+# export __symexport int f (int);
|
|
||||||
+
|
|
||||||
+# __symexport int g_impl (int i) {return i - 1;}
|
|
||||||
+# export __symexport inline int g (int i) {return g_impl (i);}
|
|
||||||
+# EOI
|
|
||||||
+# ln -s ../core.cxx core-f.cxx;
|
|
||||||
+# cat <<EOI >=core-g.cxx;
|
|
||||||
+# module foo.core;
|
|
||||||
+# int g_impl (int i) {return i - 1;}
|
|
||||||
+# EOI
|
|
||||||
+# cat <<EOI >=driver.cxx;
|
|
||||||
+# import foo.core;
|
|
||||||
+# int main (int argc, char*[]) {return f (argc) + g (argc);}
|
|
||||||
+# EOI
|
|
||||||
+# $* test clean <<EOI
|
|
||||||
+# ./: lib{foo} exe{test} # Full build.
|
|
||||||
+# exe{test}: cxx{driver} lib{foo}
|
|
||||||
+# lib{foo}: mxx{core} cxx{core-f} # @@ VC: core-g
|
|
||||||
+# EOI
|
|
12
build2.spec
12
build2.spec
@ -27,11 +27,6 @@ Source100: https://pkg.cppget.org/1/beta/odb/libodb-%{libodb_bundle_version
|
|||||||
Source101: https://pkg.cppget.org/1/beta/odb/libodb-sqlite-%{libodb_bundle_version}.tar.gz
|
Source101: https://pkg.cppget.org/1/beta/odb/libodb-sqlite-%{libodb_bundle_version}.tar.gz
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Disable some C++ modules tests for PPC64LE because GCC has issues linking C++
|
|
||||||
# modules on PPC64LE:
|
|
||||||
# driver.cxx:(.text+0x88): unresolvable R_PPC64_REL24 against `_ZGIW3foo4coreEv'
|
|
||||||
# /usr/bin/ld: final link failed: bad value
|
|
||||||
Patch0100: build2-disable-test-cc-modules-ppc64le.patch
|
|
||||||
# Upstream https://git.build2.org/cgit/build2/commit/?id=343d6e69e412166cfc21f268a51b692cb0201653
|
# Upstream https://git.build2.org/cgit/build2/commit/?id=343d6e69e412166cfc21f268a51b692cb0201653
|
||||||
Patch0000: libbuild2-libpkgconf-error_handler-non-const-data.patch
|
Patch0000: libbuild2-libpkgconf-error_handler-non-const-data.patch
|
||||||
# Upstream https://git.build2.org/cgit/build2/commit/?id=417be15231cb34a2e858d26b63406d1fb5535cb9
|
# Upstream https://git.build2.org/cgit/build2/commit/?id=417be15231cb34a2e858d26b63406d1fb5535cb9
|
||||||
@ -270,9 +265,6 @@ This package contains the %{name} RPM macros.
|
|||||||
%setup -q -c -n %{name}-toolchain-%{version} -a 1 -a 2 -a 3 -a 4 -a 100 -a 101
|
%setup -q -c -n %{name}-toolchain-%{version} -a 1 -a 2 -a 3 -a 4 -a 100 -a 101
|
||||||
%endif
|
%endif
|
||||||
pushd %{name}-%{version}
|
pushd %{name}-%{version}
|
||||||
%ifarch ppc64le
|
|
||||||
%patch -p 1 -P 0100
|
|
||||||
%endif
|
|
||||||
%patch -p 1 -P 0000
|
%patch -p 1 -P 0000
|
||||||
%patch -p 1 -P 0001
|
%patch -p 1 -P 0001
|
||||||
popd
|
popd
|
||||||
@ -648,6 +640,10 @@ b test:
|
|||||||
%{_rpmmacrodir}/macros.%{name}
|
%{_rpmmacrodir}/macros.%{name}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Mar 4 2023 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.15.0-2
|
||||||
|
- Add and remove required patches for Fedora 38
|
||||||
|
- Use SPDX license expressions
|
||||||
|
|
||||||
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-2
|
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user