gcc10-fortran

MEDIUM
maintainer severach 4 votes base gcc10 scanned 2026-09-23 19:40:47.268111
View on AUR
Why flagged

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

Triggered rules

Medium source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:25 "https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz"{,.sig}

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Chris Severance aur.severach aATt spamgourmet dott com
2# Contributor: Jonathon Fernyhough <jonathon+m2x+dev>
3# Contributor: Giancarlo Razzolini <grazzolini@archlinux.org>
4# Contributor: Frederik Schwan <freswa at archlinux dot org>
5# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
6# Contributor: Allan McRae <allan@archlinux.org>
7# Contributor: Daniel Kozak <kozzi11@gmail.com>
8
9set -u
10pkgbase='gcc10'
11pkgname=("${pkgbase}" "${pkgbase}-libs" "${pkgbase}-fortran")
12pkgver='10.5.0'
13_majorver="${pkgver%%.*}"
14_islver='0.24'
15pkgrel='2'
16pkgdesc="The GNU Compiler Collection (${_majorver}.x.x)"
17arch=('x86_64')
18url='https://gcc.gnu.org'
19license=('GPL-3.0-or-later' 'LGPL-3.0+' 'GFDL-1.3' 'LicenseRef-custom')
20makedepends=('binutils' 'doxygen' 'git' 'libmpc' 'python')
21checkdepends=('dejagnu' 'inetutils')
22options=('!emptydirs' '!strip' '!buildflags')
23options+=('!lto')
24source=(
25 "https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz"{,.sig}
26 "https://sourceware.org/pub/gcc/infrastructure/isl-${_islver}.tar.bz2"
27 'c89'
28 'c99'
29 '78_all-libsanitizer-Fix-build-with-glibc-2.42.patch'
30 '79_all-sanitizer_common-Remove-reference-to-obsolete-termio.patch'
31 '0000-kernel-7.1-remove-linux-scc.patch'
32)
33validpgpkeys=(
34 'F3691687D867B81B51CE07D9BBE43771487328A9' # bpiotrowski@archlinux.org
35 '86CFFCA918CF3AF47147588051E8B148A9999C34' # evangelos@foutrelis.com
36 '13975A70E63C361C73AE69EF6EEB81F8981C74C7' # richard.guenther@gmail.com
37 'D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62' # Jakub Jelinek <jakub@redhat.com>
38)
39md5sums=('c7d1958570fbd1cd859b015774b9987a'
40 'SKIP'
41 'dd2f7b78e118c25bd96134a52aae7f4d'
42 'd5fd2672deb5f97a2c4bdab486470abe'
43 'd99ba9f4bd860e274f17040ee51cd1bf'
44 '1cf5f363b18a5a9d821cc8f95c4fc823'
45 'e0276415c53a136dd94a597558fb1b0d'
46 '8bc105c741a8c0b191bcb933e9325f5f')
47b2sums=('9b71761f4015649514677784443886e59733ac3845f7dfaa4343f46327d36c08c403c444b9e492b870ac0b3f2e3568f972b7700a0ef05a497fb4066079b3143b'
48 'SKIP'
49 '88a178dad5fe9c33be5ec5fe4ac9abc0e075a86cff9184f75cedb7c47de67ce3be273bd0db72286ba0382f4016e9d74855ead798ad7bccb015b853931731828e'
50 'a76d19c7830b0a141302890522086fc1548c177611501caac7e66d576e541b64ca3f6e977de715268a9872dfdd6368a011b92e01f7944ec0088f899ac0d2a2a5'
51 '02b655b5668f7dea51c3b3e4ff46d5a4aee5a04ed5e26b98a6470f39c2e98ddc0519bffeeedd982c31ef3c171457e4d1beaff32767d1aedd9346837aac4ec3ee'
52 '57ce372a8f541d332beedfd6a54d9014f6457a7c486cd3f6f41e3ffbe716b8fa5d18cada4021b5e05a548e1ddcdbf0b11f6ac5b3525e421617df20a0d0fe8dbd'
53 '1339c1b5d6e8000824625cdee4f5be2ace66f3b9eb1bbe20e66a4a8a6c02a149b9670da0703b2a4d87494883fbced3ff4408ecc453ee313244361759c0b3bbc1'
54 'e9dc5a52eb0fc80570738d1f06ee9798300c8a26a186cb682e9359ce40a97cf49c0e4c309244ddbbace5dab1d488b1cba33a1c9656f11de57bfa3081fb292153')
55
56if [ -n "${_snapshot:-}" ]; then
57 _basedir="gcc-${_snapshot}"
58else
59 _basedir="gcc-${pkgver}"
60fi
61
62_fn_setlibdir() {
63 _libdir="usr/lib/gcc/${CHOST}/${pkgver%%+*}"
64}
65
66prepare() {
67 local -
68 set -u
69 cd "${_basedir}"
70
71 # link isl for in-tree build
72 ln -s "../isl-${_islver}" 'isl'
73
74 # Do not run fixincludes
75 sed -e 's@\./fixinc\.sh@-c true@' -i 'gcc/Makefile.in'
76
77 # Arch Linux installs x86_64 libraries /lib
78 case "${CARCH}" in
79 'x86_64') sed -e '/m64=/ s/lib64/lib/' -i 'gcc/config/i386/t-linux64' ;;
80 esac
81
82 # hack! - some configure tests for header files using "$CPP $CPPFLAGS"
83 sed -e '/ac_cpp=/s/$CPPFLAGS/$CPPFLAGS -O2/' -i 'gcc/configure'
84
85 # Apply patches
86 local _pt
87 for _pt in "${source[@]%%::*}"; do
88 _pt="${_pt##*/}"
89 case "${_pt}" in
90 *.patch)
91 set +u; msg2 "*** Applying patch ${_pt}"; set -u
92 patch --no-backup-if-mismatch -Np1 -i "${srcdir}/${_pt}"
93 ;;
94 esac
95 done
96 #cd ..; cp -pr "${_basedir}" 'a'; ln -s "${_basedir}" 'b'; false
97 #diff -pNaru5 'a' 'b' > 0000-$RANDOM.patch
98
99 rm -rf 'gcc-build'
100 mkdir 'gcc-build'
101}
102
103build() {
104 local -
105 set -u
106 cd "${_basedir}/gcc-build"
107
108 if [ ! -s 'Makefile' ]; then
109 # The following options are one per line, mostly sorted so they are easy to diff compare to other gcc packages.
110 local _conf=(
111 --build="${CHOST}"
112 --disable-libssp
113 --disable-libstdcxx-pch
114 --disable-libunwind-exceptions
115 --disable-multilib
116 --disable-werror
117 --enable-__cxa_atexit
118 --enable-cet='auto'
119 --enable-checking='release'
120 --enable-clocale='gnu'
121 --enable-default-pie
122 --enable-default-ssp
123 --enable-gnu-indirect-function
124 --enable-gnu-unique-object
125 --enable-languages='c,c++,fortran,lto'
126 --enable-linker-build-id
127 --enable-lto
128 --enable-plugin
129 --enable-shared
130 --enable-threads='posix'
131 --enable-version-specific-runtime-libs
132 --infodir='/usr/share/info'
133 --libdir='/usr/lib'
134 --libexecdir='/usr/lib'
135 --mandir='/usr/share/man'
136 --program-suffix="-${_majorver}"
137 --with-bugurl="https://aur.archlinux.org/packages/${pkgname}/"
138 --with-isl
139 --with-linker-hash-style='gnu'
140 --with-pkgversion="Arch Linux ${pkgver}-${pkgrel}"
141 --with-system-zlib
142 --prefix='/usr'
143 )
144 ../configure "${_conf[@]}"
145
146 #sed -e 's/^STAGE1_CXXFLAGS.*$/& -std=gnu++11/' -i 'Makefile'
147 fi
148
149 # The system stdc must be used when gcc links to some system libraries.
150 LD_PRELOAD='/usr/lib/libstdc++.so' \
151 nice -n1 make -s
152
153 set +u; msg 'Compile complete'; set -u
154
155 # make documentation
156 make -s -j1 -C "${CHOST}/libstdc++-v3/doc" 'doc-man-doxygen'
157}
158
159check_disabled() {
160 local -
161 set -u
162 cd "${_basedir}/gcc-build"
163
164 # disable libphobos test to avoid segfaults and other unfunny ways to waste my time
165 sed -e '/maybe-check-target-libphobos \\/d' -i 'Makefile'
166
167 # do not abort on error as some are "expected"
168 make -O -k check || :
169 ../contrib/test_summary
170}
171
172package_gcc10-libs() {
173 local -
174 set -u
175 pkgdesc="Runtime libraries shipped by GCC (${_majorver}.x.x)"
176 depends=('glibc>=2.27')
177 options=('!emptydirs' '!strip')
178 provides=("libgfortran.so=${pkgver}" "libubsan.so=${pkgver}" "libasan.so=${pkgver}" "libtsan.so=${pkgver}" "liblsan.so=${pkgver}")
179
180 cd "${_basedir}/gcc-build"
181 LD_PRELOAD='/usr/lib/libstdc++.so' \
182 make -j1 -s -C "${CHOST}/libgcc" DESTDIR="${pkgdir}" 'install-shared'
183 local _libdir; _fn_setlibdir
184 mv "${pkgdir}/${_libdir}/../lib"/* "${pkgdir}/${_libdir}"
185 rmdir "${pkgdir}/${_libdir}/../lib"
186 rm -f "${pkgdir}/${_libdir}/libgcc_eh.a"
187
188 local _lib _libs=(
189 libatomic
190 libgfortran
191 libgomp
192 libitm
193 libquadmath
194 libsanitizer/{a,l,ub,t}san
195 libstdc++-v3/src
196 libvtv
197 )
198 for _lib in "${_libs[@]}"; do
199 make -j1 -s -C "${CHOST}/${_lib}" DESTDIR="${pkgdir}" 'install-toolexeclibLTLIBRARIES'
200 done
201
202 make -j1 -s -C "${CHOST}/libstdc++-v3/po" DESTDIR="${pkgdir}" install
203
204 # Install Runtime Library Exception
205 install -Dpm644 '../COPYING.RUNTIME' \
206 "${pkgdir}/usr/share/licenses/${pkgbase}-libs/RUNTIME.LIBRARY.EXCEPTION"
207
208 # remove conflicting files
209 rm -rf "${pkgdir}/usr/share/locale"
210}
211
212package_gcc10() {
213 local -
214 set -u
215 pkgdesc="The GNU Compiler Collection - C and C++ frontends (${_majorver}.x.x)"
216 depends=("${pkgbase}-libs=${pkgver}-${pkgrel}" 'binutils>=2.28' 'libmpc' 'zstd')
217 options=('!emptydirs' 'staticlibs')
218
219 cd "${_basedir}/gcc-build"
220
221 make -j1 -s -C 'gcc' DESTDIR="${pkgdir}" 'install-driver' 'install-cpp' 'install-gcc-ar' \
222 'c++.install-common' 'install-headers' 'install-plugin' 'install-lto-wrapper'
223
224 local _libdir; _fn_setlibdir
225 install -m755 -t "${pkgdir}/${_libdir}/" gcc/{cc1,cc1plus,collect2,lto1,gcov{,-tool}}
226
227 make -j1 -s -C "${CHOST}/libgcc" DESTDIR="${pkgdir}" install
228 rm -rf "${pkgdir}/${_libdir}/../lib"
229
230 make -j1 -s -C "${CHOST}/libstdc++-v3/src" DESTDIR="${pkgdir}" install
231 make -j1 -s -C "${CHOST}/libstdc++-v3/include" DESTDIR="${pkgdir}" install
232 make -j1 -s -C "${CHOST}/libstdc++-v3/libsupc++" DESTDIR="${pkgdir}" install
233 make -j1 -s -C "${CHOST}/libstdc++-v3/python" DESTDIR="${pkgdir}" install
234 rm -f "${pkgdir}/${_libdir}/"libstdc++.so*
235
236 make -j1 -s DESTDIR="${pkgdir}" 'install-fixincludes'
237 make -j1 -s -C 'gcc' DESTDIR="${pkgdir}" 'install-mkheaders'
238
239 make -j1 -s -C 'lto-plugin' DESTDIR="${pkgdir}" install
240 install -dm755 "${pkgdir}/${_libdir}/bfd-plugins/"
241 ln -s "/${_libdir}/liblto_plugin.so" \
242 "${pkgdir}/${_libdir}/bfd-plugins/"
243
244 make -j1 -s -C "${CHOST}/libgomp" DESTDIR="${pkgdir}" install-nodist_{libsubinclude,toolexeclib}HEADERS
245 make -j1 -s -C "${CHOST}/libitm" DESTDIR="${pkgdir}" 'install-nodist_toolexeclibHEADERS'
246 make -j1 -s -C "${CHOST}/libquadmath" DESTDIR="${pkgdir}" 'install-nodist_libsubincludeHEADERS'
247 make -j1 -s -C "${CHOST}/libsanitizer" DESTDIR="${pkgdir}" install-nodist_{saninclude,toolexeclib}HEADERS
248 make -j1 -s -C "${CHOST}/libsanitizer/asan" DESTDIR="${pkgdir}" 'install-nodist_toolexeclibHEADERS'
249 make -j1 -s -C "${CHOST}/libsanitizer/tsan" DESTDIR="${pkgdir}" 'install-nodist_toolexeclibHEADERS'
250 make -j1 -s -C "${CHOST}/libsanitizer/lsan" DESTDIR="${pkgdir}" 'install-nodist_toolexeclibHEADERS'
251
252 make -j1 -s -C 'libcpp' DESTDIR="${pkgdir}" install
253 make -j1 -s -C 'gcc' DESTDIR="${pkgdir}" 'install-po'
254
255 # many packages expect this symlink
256 ln -s "gcc-${_majorver}" "${pkgdir}/usr/bin/cc-${_majorver}"
257
258 # POSIX conformance launcher scripts for c89 and c99
259 install -Dm755 "${srcdir}/c89" "${pkgdir}/usr/bin/c89-${_majorver}"
260 install -Dm755 "${srcdir}/c99" "${pkgdir}/usr/bin/c99-${_majorver}"
261
262 # byte-compile python libraries
263 python -m 'compileall' "${pkgdir}/usr/share/gcc-${pkgver%%+*}/"
264 python -O -m 'compileall' "${pkgdir}/usr/share/gcc-${pkgver%%+*}/"
265
266 # Install Runtime Library Exception
267 install -d "${pkgdir}/usr/share/licenses/${pkgname}/"
268 ln -s "/usr/share/licenses/${pkgbase}-libs/RUNTIME.LIBRARY.EXCEPTION" \
269 "${pkgdir}/usr/share/licenses/${pkgname}/"
270
271 # Remove conflicting files
272 rm -rf "${pkgdir}/usr/share/locale"
273}
274
275package_gcc10-fortran() {
276 local -
277 set -u
278 pkgdesc="Fortran front-end for GCC (${_majorver}.x.x)"
279 depends=("${pkgbase}=${pkgver}-${pkgrel}")
280
281 cd "${_basedir}/gcc-build"
282 make -j1 -s -C "${CHOST}/libgfortran" DESTDIR="${pkgdir}" 'install-cafexeclibLTLIBRARIES' \
283 install-{toolexeclibDATA,nodist_fincludeHEADERS,gfor_cHEADERS}
284 make -j1 -s -C "${CHOST}/libgomp" DESTDIR="${pkgdir}" 'install-nodist_fincludeHEADERS'
285 make -j1 -s -C 'gcc' DESTDIR="${pkgdir}" 'fortran.install-common'
286 local _libdir; _fn_setlibdir
287 install -Dm755 'gcc/f951' "${pkgdir}/${_libdir}/f951"
288
289 ln -s "gfortran-${_majorver}" "${pkgdir}/usr/bin/f95-${_majorver}"
290
291 # Install Runtime Library Exception
292 install -d "${pkgdir}/usr/share/licenses/${pkgname}/"
293 ln -s "/usr/share/licenses/${pkgbase}-libs/RUNTIME.LIBRARY.EXCEPTION" \
294 "${pkgdir}/usr/share/licenses/${pkgname}/"
295}
296set +u
297

Changes since previous scan

--- PKGBUILD @ 2026-06-19 19:07
+++ PKGBUILD @ 2026-09-23 19:40
@@ -28,6 +28,7 @@
'c99'
'78_all-libsanitizer-Fix-build-with-glibc-2.42.patch'
'79_all-sanitizer_common-Remove-reference-to-obsolete-termio.patch'
+ '0000-kernel-7.1-remove-linux-scc.patch'
)
validpgpkeys=(
'F3691687D867B81B51CE07D9BBE43771487328A9' # bpiotrowski@archlinux.org
@@ -41,14 +42,16 @@
'd5fd2672deb5f97a2c4bdab486470abe'
'd99ba9f4bd860e274f17040ee51cd1bf'
'1cf5f363b18a5a9d821cc8f95c4fc823'
- 'e0276415c53a136dd94a597558fb1b0d')
+ 'e0276415c53a136dd94a597558fb1b0d'
+ '8bc105c741a8c0b191bcb933e9325f5f')
b2sums=('9b71761f4015649514677784443886e59733ac3845f7dfaa4343f46327d36c08c403c444b9e492b870ac0b3f2e3568f972b7700a0ef05a497fb4066079b3143b'
'SKIP'
'88a178dad5fe9c33be5ec5fe4ac9abc0e075a86cff9184f75cedb7c47de67ce3be273bd0db72286ba0382f4016e9d74855ead798ad7bccb015b853931731828e'
'a76d19c7830b0a141302890522086fc1548c177611501caac7e66d576e541b64ca3f6e977de715268a9872dfdd6368a011b92e01f7944ec0088f899ac0d2a2a5'
'02b655b5668f7dea51c3b3e4ff46d5a4aee5a04ed5e26b98a6470f39c2e98ddc0519bffeeedd982c31ef3c171457e4d1beaff32767d1aedd9346837aac4ec3ee'
'57ce372a8f541d332beedfd6a54d9014f6457a7c486cd3f6f41e3ffbe716b8fa5d18cada4021b5e05a548e1ddcdbf0b11f6ac5b3525e421617df20a0d0fe8dbd'
- '1339c1b5d6e8000824625cdee4f5be2ace66f3b9eb1bbe20e66a4a8a6c02a149b9670da0703b2a4d87494883fbced3ff4408ecc453ee313244361759c0b3bbc1')
+ '1339c1b5d6e8000824625cdee4f5be2ace66f3b9eb1bbe20e66a4a8a6c02a149b9670da0703b2a4d87494883fbced3ff4408ecc453ee313244361759c0b3bbc1'
+ 'e9dc5a52eb0fc80570738d1f06ee9798300c8a26a186cb682e9359ce40a97cf49c0e4c309244ddbbace5dab1d488b1cba33a1c9656f11de57bfa3081fb292153')
if [ -n "${_snapshot:-}" ]; then
_basedir="gcc-${_snapshot}"
@@ -61,6 +64,7 @@
}
prepare() {
+ local -
set -u
cd "${_basedir}"
@@ -89,14 +93,15 @@
;;
esac
done
+ #cd ..; cp -pr "${_basedir}" 'a'; ln -s "${_basedir}" 'b'; false
+ #diff -pNaru5 'a' 'b' > 0000-$RANDOM.patch
rm -rf 'gcc-build'
mkdir 'gcc-build'
-
- set +u
}
build() {
+ local -
set -u
cd "${_basedir}/gcc-build"
@@ -149,10 +154,10 @@
# make documentation
make -s -j1 -C "${CHOST}/libstdc++-v3/doc" 'doc-man-doxygen'
- set +u
}
check_disabled() {
+ local -
set -u
cd "${_basedir}/gcc-build"
@@ -162,10 +167,10 @@
# do not abort on error as some are "expected"
make -O -k check || :
../contrib/test_summary
- set +u
}
package_gcc10-libs() {
+ local -
set -u
pkgdesc="Runtime libraries shipped by GCC (${_majorver}.x.x)"
depends=('glibc>=2.27')
@@ -202,10 +207,10 @@
# remove conflicting files
rm -rf "${pkgdir}/usr/share/locale"
- set +u
}
package_gcc10() {
+ local -
set -u
pkgdesc="The GNU Compiler Collection - C and C++ frontends (${_majorver}.x.x)"
depends=("${pkgbase}-libs=${pkgver}-${pkgrel}" 'binutils>=2.28' 'libmpc' 'zstd')
@@ -265,10 +270,10 @@
# Remove conflicting files
rm -rf "${pkgdir}/usr/share/locale"
- set +u
}
package_gcc10-fortran() {
+ local -
set -u
pkgdesc="Fortran front-end for GCC (${_majorver}.x.x)"
depends=("${pkgbase}=${pkgver}-${pkgrel}")
@@ -287,7 +292,6 @@
install -d "${pkgdir}/usr/share/licenses/${pkgname}/"
ln -s "/usr/share/licenses/${pkgbase}-libs/RUNTIME.LIBRARY.EXCEPTION" \
"${pkgdir}/usr/share/licenses/${pkgname}/"
- set +u
}
set +u

Scan history

Scanned at (UTC)SeverityRules
2026-09-23 19:40:47 Medium 1
2026-06-19 19:07:35 Clean 2
2026-06-18 16:11:54 Medium 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion