gcc44-multilib
maintainer severach
· 4 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The source is a legitimate GCC release tarball from a mirror of sourceware.org, which is an official project host; building from this source is standard practice and not inherently dangerous.
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 source is a legitimate GCC release tarball from a mirror of sourceware.org, which is an official project host; building from this source is standard practice and not inherently dangerous.
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:29
"http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2"
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Chris Severance aur.severach aATt spamgourmet dott com
2
# Contributor: Piotr "utak3r" Borys <piotr.borys@gmail.com>
3
# Contributor: Giovanni "ItachiSan" Santini <giovannisantini93@yahoo.it>
4
5
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
6
# NOTE: libtool requires rebuilt with each new gcc version
7
8
set -u
9
_pkgver='4.4'
10
pkgname="gcc${_pkgver//\./}"
11
pkgname+='-multilib'
12
pkgver="${_pkgver}.7"
13
pkgrel='4'
14
_libstdcppmanver=4.5.2 # Note: check source directory name when updating this
15
pkgdesc="The GNU Compiler Collection (${_pkgver}.x)"
16
pkgdesc+=" - multilib version"
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' 'lib32-glibc' 'gcc-libs' 'lib32-gcc-libs' 'gmp' 'bash' 'binutils' 'mpfr' 'zlib')
21
makedepends=('binutils>=2.21' 'libmpc' 'cloog' 'elfutils' 'dejagnu' 'glibc>=2.11.1-2' 'lib32-glibc>=2.12.1')
22
conflicts=('gcc44') # Existing package from AUR
23
provides=("gcc44=${pkgver}")
24
options=('staticlibs' '!libtool' '!buildflags' '!emptydirs')
25
source=(
26
# ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2 <- the one over is 'optimized',
27
# it chooses the right mirror for you
28
#"http://ftpmirror.gnu.org/gcc/gcc-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2"
29
"http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2"
30
# If you have problems, use the source below
31
# http://ftp.vim.org/languages/gcc/libstdc++/doxygen/libstdc++-api-${_libstdcppmanver}.man.tar.bz2
32
#"ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api-${_libstdcppmanver}.man.tar.bz2" # can't be automagically resolved, doh
33
# Various patches
34
'gcc_pure64.patch'
35
'gcc-hash-style-both.patch'
36
'siginfo_t_fix.patch'
37
'texinfo_5_fix.patch'
38
'gcc-fix_toplevel_inlines.patch'
39
)
40
md5sum=(x)
41
sha256sums=('5ff75116b8f763fa0fb5621af80fc6fb3ea0f1b1a57520874982f03f26cd607f'
42
'59d7a0b897e0a6e4e126319d2c4db770fe4531e5700bb7c320f0075935078204'
43
'a600550d3d2b2fb8ee6a547c68c3a08a2af7579290b340c35ee5598c9bb305a5'
44
'24cb033fa363148952b5ed7cdff635fbee0ae55ecafe5dfa32206e97cb0c4af3'
45
'4f4d16d98d72c29ebccdda6a89d65fcd9357703c97c3fca65080ae3e7add762c'
46
'9a43d0dfb398dc0dd42f05059718dc5ee9ab8bcf7eaf5234e420f5d3ceb8c8c5')
47
48
if [ -n "${_snapshot:-}" ]; then
49
_basedir="gcc-${_snapshot}"
50
else
51
_basedir="gcc-${pkgver}"
52
fi
53
54
#_libdir="usr/lib/gcc/${CHOST}/${pkgver}"
55
56
prepare() {
57
set -u
58
cd "${_basedir}"
59
60
# "Add" ppl-0.11 compatibility
61
sed -e "/ppl_minor_version=/s#10#11#" -i 'configure'
62
63
# Do not install libiberty
64
sed -e 's/install_to_$(INSTALL_DEST) //' -i 'libiberty/Makefile.in'
65
66
# Do not run fixincludes
67
#sed -e 's@\./fixinc\.sh@-c true@' -i 'gcc/Makefile.in'
68
69
patch -Np0 -i "${srcdir}/gcc-hash-style-both.patch"
70
71
patch -Np1 -i "${srcdir}/siginfo_t_fix.patch"
72
73
patch -Np1 -i "${srcdir}/gcc-fix_toplevel_inlines.patch"
74
75
patch -Np1 -i "${srcdir}/texinfo_5_fix.patch"
76
77
case "${CARCH}" in
78
'x86_64') patch -Np1 -i '../gcc_pure64.patch';;
79
esac
80
81
# fix build with glibc 2.26
82
sed -e 's:\bstruct ucontext\b:ucontext_t:g' -i $(grep --include '*.[ch]' --include '*.cc' -lre '\bstruct ucontext\b')
83
sed -e 's:\bstruct sigaltstack\b:stack_t:g' -i $(grep --include '*.[ch]' --include '*.cc' -lre '\bstruct sigaltstack\b')
84
85
echo "${pkgver}" > 'gcc/BASE-VER'
86
87
rm -rf 'gcc-build'
88
mkdir 'gcc-build'
89
90
set +u
91
}
92
93
build() {
94
set -u
95
if [ ! -s "${_basedir}/gcc-build/Makefile" ]; then
96
cd "${_basedir}"
97
98
cd 'gcc-build'
99
# The following options are one per line, mostly sorted so they are easy to diff compare to other gcc packages.
100
local _conf=(
101
--build="${CHOST}"
102
--disable-libstdcxx-pch
103
--enable-multilib
104
--disable-libunwind-exceptions
105
--disable-werror
106
--enable-checking='release'
107
--enable-__cxa_atexit
108
--enable-clocale='gnu'
109
--enable-cloog-backend='isl'
110
--enable-gnu-unique-object
111
--enable-gold
112
--enable-languages='c,c++'
113
--enable-ld='default'
114
--enable-linker-build-id
115
--enable-lto
116
--enable-plugin
117
--enable-shared
118
--enable-threads='posix'
119
--enable-version-specific-runtime-libs
120
--infodir='/usr/share/info'
121
--libdir='/usr/lib'
122
--libexecdir='/usr/lib'
123
--mandir='/usr/share/man'
124
--program-suffix="-${_pkgver}"
125
#--with-bugurl='https://github.com/ItachiSan/linux_packaging/issues/'
126
--with-cloog
127
--with-plugin-ld='ld.gold'
128
--with-ppl
129
--with-system-zlib
130
--prefix='/usr'
131
#CXX='g++-4.9' CC='gcc-4.9'
132
CXX='g++ -Wno-implicit-function-declaration -Wno-incompatible-pointer-types'
133
CC='gcc -Wno-implicit-function-declaration -Wno-incompatible-pointer-types'
134
)
135
../configure "${_conf[@]}"
136
137
sed -e 's/^STAGE1_CXXFLAGS.*$/& -std=gnu++11/' -i 'Makefile'
138
fi
139
140
#LD_PRELOAD='/usr/lib/libstdc++.so' \\
141
nice make -s
142
143
# increase stack size to prevent test failures
144
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827
145
# ulimit -s 32768
146
147
# do not abort on error as some are "expected"
148
# make -k check || true
149
# ${_basedir}/contrib/test_summary
150
set +u
151
}
152
153
# Used the same package() as gcc45 (AUR).
154
package() {
155
set -u
156
cd "${_basedir}/gcc-build"
157
158
#LD_PRELOAD='/usr/lib/libstdc++.so' \\
159
make -j1 DESTDIR="${pkgdir}" install
160
161
## Lazy way of dealing with conflicting man and info pages and locales...
162
rm -rf "${pkgdir}/usr/share/"
163
164
# Install Runtime Library Exception
165
install -Dpm644 '../COPYING.RUNTIME' \
166
"${pkgdir}/usr/share/licenses/${pkgname}/RUNTIME.LIBRARY.EXCEPTION" || :
167
set +u
168
}
169
set +u
170
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 |