gcc44
maintainer severach
· 68 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package builds GCC from source hosted on a legitimate mirror (mirrorservice.org) and applies minor patches; the non-whitelisted host is a known public mirror, and the source is verified via checksums, posing minimal risk.
Triggered rules
LOW
AI review downgraded a static finding
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package builds GCC from source hosted on a legitimate mirror (mirrorservice.org) and applies minor patches; the non-whitelisted host is a known public mirror, and the source is verified via checksums, posing minimal risk.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:26
"http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2" -
PKGBUILD:30
'0000-gcc-c11-toplev.diff::https://www.rockbox.org/gcc/gcc-c11-toplev.diff'
PKGBUILD
2 offending line(s) highlighted
1
# Maintainer: Chris Severance aur.severach aATt spamgourmet dott com
2
# Contributor: Alexander Rødseth <rodseth@gmail.com>
3
# Contributor: Vlad-Mihai Sima <vladmihaisima@yahoo.com>
4
# Contributor: Carson Reynolds <carson@k2.t.u-tokyo.ac.jp>
5
# Contributor: Mikhail Vorozhtsov <mikhail.vorozhtsov@gmail.com>
6
# Contributor: Wolf Ramovsky <wolf.ramovsky@gmail.com>
7
# Contributor: kristianlm2 <kristanlein@gmail.com>
8
# Contributor: progtologist <arissynod@gmail.com>
9
# Contributor: pelluch <pablo.lluch@gmail.com>
10
11
set -u
12
_pkgver='4.4'
13
pkgname="gcc${_pkgver//\./}"
14
pkgver="${_pkgver}.7"
15
pkgrel='6'
16
pkgdesc="The GNU Compiler Collection (${_pkgver}.x)"
17
arch=('x86_64' 'i686')
18
url='http://gcc.gnu.org/'
19
license=('GPL-2.0-only' 'LGPL-2.1-only' 'GPL-3.0-only' 'LGPL-3.0-only' 'custom')
20
depends=('glibc' 'gcc-libs' 'gmp' 'bash' 'binutils' 'mpfr' 'zlib')
21
makedepends=('setconf' 'cloog' 'elfutils')
22
#makedepends+=('gcc49')
23
conflicts=("gcc${_pkgver//\./}-multilib")
24
options=('staticlibs' '!libtool' '!buildflags')
25
source=(
26
"http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2"
27
'gcc-hash-style-both.patch'
28
'gcc_pure64.patch'
29
'siginfo_t_fix.patch'
30
'0000-gcc-c11-toplev.diff::https://www.rockbox.org/gcc/gcc-c11-toplev.diff'
31
)
32
md5sums=('295709feb4441b04e87dea3f1bab4281'
33
'6fd395bacbd7b6e47c7b74854b478363'
34
'4030ee1c08dd1e843c0225b772360e76'
35
'eba17a209cf9550b66a4af0527956565'
36
'ea3bba5ee50ba043b992eaa22161e141')
37
sha256sums=('5ff75116b8f763fa0fb5621af80fc6fb3ea0f1b1a57520874982f03f26cd607f'
38
'a600550d3d2b2fb8ee6a547c68c3a08a2af7579290b340c35ee5598c9bb305a5'
39
'2d369cf93c6e15c3559c3560bce581e0ae5f1f34dc86bca013ac67ef1c1a9ff9'
40
'4df866dcfd528835393d2b6897651158faf6d84852158fbf2e4ffc113ec7d201'
41
'aa81059bc71f335c962db6bbb8c5857a5cc76e2eb33b82ce1ccd6cb536b2bc31')
42
43
if [ -n "${_snapshot:-}" ]; then
44
_basedir="gcc-${_snapshot}"
45
else
46
_basedir="gcc-${pkgver}"
47
fi
48
49
#_libdir="usr/lib/gcc/${CHOST}/${pkgver}"
50
51
prepare() {
52
set -u
53
cd "${_basedir}"
54
55
# Do not install libiberty
56
sed -e 's/install_to_$(INSTALL_DEST) //' -i 'libiberty/Makefile.in'
57
58
# Do not run fixincludes
59
sed -e 's@\./fixinc\.sh@-c true@' -i 'gcc/Makefile.in'
60
61
patch -Np0 -i "${srcdir}/gcc-hash-style-both.patch"
62
63
patch -Np1 -i "${srcdir}/siginfo_t_fix.patch"
64
65
patch -Np1 -i "${srcdir}/0000-gcc-c11-toplev.diff"
66
67
case "${CARCH}" in
68
'x86_64') patch -Np1 -i '../gcc_pure64.patch';;
69
esac
70
71
# fix build with glibc 2.26
72
sed -e 's:\bstruct ucontext\b:ucontext_t:g' -i $(grep --include '*.[ch]' --include '*.cc' -lre '\bstruct ucontext\b')
73
sed -e 's:\bstruct sigaltstack\b:stack_t:g' -i $(grep --include '*.[ch]' --include '*.cc' -lre '\bstruct sigaltstack\b')
74
75
echo "${pkgver}" > 'gcc/BASE-VER'
76
77
setconf 'gcc/configure' 'BUILD_INFO' ''
78
79
rm -rf 'gcc-build'
80
mkdir 'gcc-build'
81
82
set +u
83
}
84
85
build() {
86
set -u
87
if [ ! -s "${_basedir}/gcc-build/Makefile" ]; then
88
cd "${_basedir}"
89
90
cd 'gcc-build'
91
# The following options are one per line, mostly sorted so they are easy to diff compare to other gcc packages.
92
local _conf=(
93
--build="${CHOST}"
94
--disable-libmudflap
95
--disable-libssp
96
--disable-libstdcxx-pch
97
--disable-multilib
98
--enable-__cxa_atexit
99
--enable-clocale='gnu'
100
--enable-languages='c,c++,fortran,objc,obj-c++'
101
--enable-libgomp
102
--enable-shared
103
--enable-threads='posix'
104
--enable-version-specific-runtime-libs
105
--infodir='/usr/share/info'
106
--libdir='/usr/lib'
107
--libexecdir='/usr/lib'
108
--mandir='/usr/share/man'
109
--program-suffix="-${_pkgver}"
110
--with-cloog
111
--with-ppl
112
--with-system-zlib
113
--with-tune='generic'
114
--prefix='/usr'
115
#CXX='g++-4.9' CC='gcc-4.9'
116
CXX='g++ -Wno-implicit-function-declaration'
117
CC='gcc -Wno-implicit-function-declaration'
118
)
119
../configure "${_conf[@]}"
120
121
sed -e 's/^STAGE1_CXXFLAGS.*$/& -std=gnu++11/' -i 'Makefile'
122
fi
123
124
#LD_PRELOAD='/usr/lib/libstdc++.so' \\
125
nice make -s
126
127
set +u
128
}
129
130
package() {
131
set -u
132
cd "${_basedir}/gcc-build"
133
134
#LD_PRELOAD='/usr/lib/libstdc++.so' \\
135
make -j1 DESTDIR="${pkgdir}" install
136
137
## Lazy way of dealing with conflicting man and info pages and locales...
138
rm -rf "${pkgdir}/usr/share/man/man7"
139
rm -rf "${pkgdir}/usr/share/locale"
140
141
mv "${pkgdir}/usr/lib/gcc/${CHOST}"/lib* "${pkgdir}/usr/lib/gcc/${CHOST}/${pkgver}/"
142
143
# Create links for gcc build environment (useful for CUDA)
144
mkdir -p "${pkgdir}/opt/gcc-${_pkgver}"
145
ln -s "/usr/bin/gcc-${_pkgver}" "${pkgdir}/opt/gcc-${_pkgver}/gcc"
146
ln -s "/usr/bin/g++-${_pkgver}" "${pkgdir}/opt/gcc-${_pkgver}/g++"
147
148
# Avoid file conflicts when enabling libgomp
149
rm -rf "${pkgdir}/usr/share/info"
150
151
# Install Runtime Library Exception
152
install -Dpm644 '../COPYING.RUNTIME' \
153
"${pkgdir}/usr/share/licenses/${pkgname}/RUNTIME.LIBRARY.EXCEPTION" || :
154
set +u
155
}
156
set +u
157
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 2 |
| 2026-08-01 00:11:18 | LOW | 2 |
| 2026-07-31 00:14:10 | LOW | 2 |
| 2026-07-30 00:17:23 | LOW | 2 |
| 2026-07-29 00:25:53 | LOW | 2 |
| 2026-07-28 00:07:28 | LOW | 2 |
| 2026-07-27 00:24:32 | LOW | 2 |
| 2026-07-26 00:07:32 | LOW | 2 |
| 2026-07-25 00:13:44 | LOW | 2 |
| 2026-07-24 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |