djgpp-djcrx
maintainer andris
· 6 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads source archives from a non-whitelisted but plausibly project-owned host (delorie.com), which is a known DJGPP resource; the sources are verified via checksums and are part of a legitimate cross-compiler toolchain build, posing no executable or supply-chain 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 downloads source archives from a non-whitelisted but plausibly project-owned host (delorie.com), which is a known DJGPP resource; the sources are verified via checksums and are part of a legitimate cross-compiler toolchain build, posing no executable or supply-chain 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:15
source=("http://www.delorie.com/pub/djgpp/current/v2/djcrx${pkgver//./}.zip"
PKGBUILD
1 offending line(s) highlighted
1
# Contributor: Andris Pavenis <andris.pavenis iki fi>
2
# Contributor: carstene1ns <arch carsten-teibes de>
3
# Contributor: felix <base64 -d <<< ZmVsaXgudm9uLnNAcG9zdGVvLmRlCg==>
4
# Contributor: Schala
5
6
pkgname=djgpp-djcrx
7
pkgver=2.05
8
pkgrel=12
9
pkgdesc="Headers and utilities for the djgpp cross-compiler"
10
arch=('i686' 'x86_64')
11
url="http://www.delorie.com/djgpp/"
12
depends=('glibc' 'gcc-libs')
13
conflicts=('djgpp-djcrx-bootstrap')
14
license=('GPL' 'LGPL' 'custom:djgpp')
15
source=("http://www.delorie.com/pub/djgpp/current/v2/djcrx${pkgver//./}.zip"
16
"http://www.delorie.com/pub/djgpp/current/v2/djlsr${pkgver//./}.zip"
17
ttyscrn.patch
18
nmemalign.patch
19
fseeko64.patch
20
asm.patch
21
dxegen.patch
22
djgpp-djcrx-gcccompat.patch)
23
makedepends=('djgpp-gcc' 'djgpp-binutils')
24
sha256sums=('22274ed8d5ee57cf7ccf161f5e1684fd1c0192068724a7d34e1bde168041ca60'
25
'80690b6e44ff8bc6c6081fca1f4faeba1591c4490b76ef0ec8b35847baa5deea'
26
'83bc02407566c0613c2eeb86d78f2968c11256dfc8d3c2805a5488540e059124'
27
'ffdbab52eb13dde716fbcce54154f7c95644afd6333f4931b2cceeb95935c675'
28
'536684b0152f7ad77b99bcc5ea535ca8339832399c4582b944ccd882e4b261a1'
29
'693810c3242f4e23cdc55d3101281721da9407851e5d29459ad59405e534b916'
30
'0debe0161e27aeb004e89a43915d6d77bcd07a5db2c67e2798568535fe9143f1'
31
'8c16b24e34dc46fee86531349a84d7353552db2eff008cb9d5ffd35ec3a7249a')
32
options=('!buildflags' '!strip')
33
_target='i686-pc-msdosdjgpp'
34
35
prepare() {
36
sed -i "s/i586-pc-msdosdjgpp/$_target/" src/makefile.def src/dxe/makefile.dxe
37
sed -i 's/ln/ln -f/' src/dxe/makefile.dxe
38
39
# fix build with gcc >= 8
40
patch -Np1 < djgpp-djcrx-gcccompat.patch
41
42
# gcc provides its own float.h which masks this one
43
ln -fs float.h include/djfloat.h
44
sed -i 's/<float\.h>/<djfloat.h>/' src/libc/{go32/dpmiexcp,emu387/npxsetup}.c src/utils/redir.c
45
# Does not compile with gcc-12+ when -Werror is provided
46
# Replace it with -fanalyzer for enabling GCC static analyzer and encourage to
47
# fix found problems
48
sed -i -e 's:Werror:fanalyzer:g' src/makefile.cfg
49
50
# fix libc bugs
51
patch -Np0 < ttyscrn.patch
52
patch -Np0 < nmemalign.patch
53
patch -Np0 < fseeko64.patch
54
patch -Np0 < asm.patch
55
56
# allow using dxe3gen without DJDIR and without dxe3res in PATH
57
patch -Np0 < dxegen.patch
58
59
# be verbose
60
#sed -i '/@$(MISC) echo - / d; s/^\t@/\t/' src/makefile.inc src/libc/makefile src/utils/makefile
61
}
62
63
build() {
64
cd src
65
make clean
66
make -j1
67
68
cd dxe
69
make -f makefile.dxe
70
}
71
72
package() {
73
install -d "$pkgdir"/usr/bin
74
install -d "$pkgdir"/usr/$_target/bin
75
install -d "$pkgdir"/usr/$_target/sys-include
76
77
cp -r include/* "$pkgdir"/usr/$_target/sys-include
78
cp -r lib "$pkgdir"/usr/$_target
79
80
cd hostbin
81
for _file in djasm mkdoc stubedit stubify; do
82
install -m0755 $_file.exe "$pkgdir"/usr/$_target/bin/$_file
83
ln -s ../$_target/bin/$_file "$pkgdir"/usr/bin/$_target-$_file
84
done
85
86
cd ../src/dxe
87
for _file in dxe3gen dxe3res; do
88
install -m0755 $_file "$pkgdir"/usr/$_target/bin/$_file
89
ln -s ../$_target/bin/$_file "$pkgdir"/usr/bin/$_target-$_file
90
done
91
ln -s dxe3gen "$pkgdir"/usr/$_target/bin/dxegen
92
93
cd "$srcdir"
94
install -Dm644 copying.dj "$pkgdir"/usr/share/licenses/$pkgname/copying.dj
95
96
cd info
97
for _file in *.info; do
98
install -Dm0644 $_file "$pkgdir"/usr/share/info/djgpp-$_file
99
done
100
}
101
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 |