summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGabriel Souza Franco2020-06-28 17:43:59 -0300
committerGabriel Souza Franco2020-06-28 17:43:59 -0300
commita9d0da90286dd239403158fa9e2757a9951f4a13 (patch)
treecf607c8dcb2c1d83b7de737cc3b5981c4c787751
parent6f5389a3c096d1527fba7cdf184087837305f0a7 (diff)
downloadaur-a9d0da90286dd239403158fa9e2757a9951f4a13.tar.gz
Update to 20.1.0.711
Also split package acording to upstream components
-rw-r--r--.SRCINFO132
-rw-r--r--.gitignore3
-rw-r--r--PKGBUILD158
-rw-r--r--modelsim-ase.desktop4
-rw-r--r--modelsim-ase.sh1
-rw-r--r--quartus.desktop4
-rw-r--r--quartus.sh2
7 files changed, 251 insertions, 53 deletions
diff --git a/.SRCINFO b/.SRCINFO
index cd872aadfa77..296305de8757 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = quartus-free
- pkgdesc = Quartus Prime Lite Edition design software for Altera FPGA's
- pkgver = 19.1.0.670
+ pkgdesc = Quartus Prime Lite design software for Intel FPGAs
+ pkgver = 20.1.0.711
pkgrel = 1
url = http://fpgasoftware.intel.com/?edition=lite
arch = x86_64
@@ -27,20 +27,132 @@ pkgbase = quartus-free
depends = lib32-libxrender
depends = lib32-libxt
depends = lib32-libxtst
- depends = lib32-tkimg
- depends = libpng12
+ noextract = arria_lite-20.1.0.711.qdz
+ noextract = cyclone-20.1.0.711.qdz
+ noextract = cyclone10lp-20.1.0.711.qdz
+ noextract = cyclonev-20.1.0.711.qdz
+ noextract = max-20.1.0.711.qdz
+ noextract = max10-20.1.0.711.qdz
options = !strip
options = !debug
- source = http://download.altera.com/akdlm/software/acdsinst/19.1std/670/ib_tar/Quartus-lite-19.1.0.670-linux.tar
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/QuartusLiteSetup-20.1.0.711-linux.run
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/ModelSimSetup-20.1.0.711-linux.run
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/QuartusHelpSetup-20.1.0.711-linux.run
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/arria_lite-20.1.0.711.qdz
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/cyclone-20.1.0.711.qdz
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/cyclone10lp-20.1.0.711.qdz
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/cyclonev-20.1.0.711.qdz
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/max-20.1.0.711.qdz
+ source = http://download.altera.com/akdlm/software/acdsinst/20.1std/711/ib_installers/max10-20.1.0.711.qdz
source = quartus.sh
source = quartus.desktop
+ source = modelsim-ase.sh
source = modelsim-ase.desktop
source = 51-usbblaster.rules
- sha256sums = 3546e90f6496b17c3c3e3e8582a3991940ad73ed112740428864460cfab6e40a
- sha256sums = 2a3d61e6f01aa16c9d3ddd40e9741b9fd080496db5437530b4e38faf6771c1ed
- sha256sums = f8ba2a84c6f7551bb4ab62d17f77e2814c70871ddb15f0276f1bf89cc6c674b8
- sha256sums = a37738de447c50ca7bfe856466bd9567850ccf45ac6c3f0a6e63ef5bb863645f
- sha256sums = dd9d33fa2698a0ec11ae86f4508f77e2e12bf4a21224f5b16640bc41d6c0999b
+ md5sums = e995b65f09aa0855770a2315cf7bc2ff
+ md5sums = 6c0b26510477d20896becca042c33917
+ md5sums = cbfc39a16bc6fcbb6862aa676e2fbcfb
+ md5sums = a439bb4873e69bd23e35aced3ea9ba8c
+ md5sums = 14e47510cea47dc0ed92c8cb97d76488
+ md5sums = af64dc8c95035dd084e9e8b621eb1378
+ md5sums = 2b30d36171d1beb159971f89206e6d9f
+ md5sums = 2ef442bc8872aa4e39ed3b313e13cc2a
+ md5sums = 10284d71211a02f6dd20cbc41c9ececb
+ md5sums = 737d51fcc74c8d6d2114c8f4ba79e4de
+ md5sums = c5a8f6310ade971f07e5ee6c4e338054
+ md5sums = ea5eca3341da1628e57f3efb7e074796
+ md5sums = a32f9e42db394016ce267c8d96f69cd5
+ md5sums = f5744dc4820725b93917e3a24df13da9
pkgname = quartus-free
+ pkgdesc = Meta-package containing all Quartus Prime Lite tools and device libraries
+ depends = quartus-free-quartus
+ depends = quartus-free-modelsim
+ depends = quartus-free-help
+ depends = quartus-free-devinfo-arria_lite
+ depends = quartus-free-devinfo-cyclone
+ depends = quartus-free-devinfo-cyclone10lp
+ depends = quartus-free-devinfo-cyclonev
+ depends = quartus-free-devinfo-max
+ depends = quartus-free-devinfo-max10
+
+pkgname = quartus-free-quartus
+ depends = lib32-expat
+ depends = lib32-fontconfig
+ depends = lib32-freetype2
+ depends = lib32-glibc
+ depends = lib32-gtk2
+ depends = lib32-libcanberra
+ depends = lib32-libpng
+ depends = lib32-libice
+ depends = lib32-libsm
+ depends = lib32-util-linux
+ depends = lib32-ncurses
+ depends = lib32-ncurses5-compat-libs
+ depends = lib32-zlib
+ depends = lib32-libx11
+ depends = lib32-libxau
+ depends = lib32-libxdmcp
+ depends = lib32-libxext
+ depends = lib32-libxft
+ depends = lib32-libxrender
+ depends = lib32-libxt
+ depends = lib32-libxtst
+ depends = quartus-free-devinfo
+ optdepends = eclipse: For Nios II EDS
+
+pkgname = quartus-free-modelsim
+ pkgdesc = Quartus Prime Lite - ModelSim-Intel FPGA Starter Edition
+ depends = lib32-expat
+ depends = lib32-fontconfig
+ depends = lib32-freetype2
+ depends = lib32-glibc
+ depends = lib32-gtk2
+ depends = lib32-libcanberra
+ depends = lib32-libpng
+ depends = lib32-libice
+ depends = lib32-libsm
+ depends = lib32-util-linux
+ depends = lib32-ncurses
+ depends = lib32-ncurses5-compat-libs
+ depends = lib32-zlib
+ depends = lib32-libx11
+ depends = lib32-libxau
+ depends = lib32-libxdmcp
+ depends = lib32-libxext
+ depends = lib32-libxft
+ depends = lib32-libxrender
+ depends = lib32-libxt
+ depends = lib32-libxtst
+ depends = lib32-alsa-lib
+ depends = lib32-libxi
+ depends = lib32-libxml2
+
+pkgname = quartus-free-help
+ pkgdesc = Quartus Prime Lite - help files
+ depends = quartus-free-quartus
+
+pkgname = quartus-free-devinfo-arria_lite
+ pkgdesc = Quartus Prime Lite - devinfo files for arria_lite
+ provides = quartus-free-devinfo
+
+pkgname = quartus-free-devinfo-cyclone
+ pkgdesc = Quartus Prime Lite - devinfo files for cyclone
+ provides = quartus-free-devinfo
+
+pkgname = quartus-free-devinfo-cyclone10lp
+ pkgdesc = Quartus Prime Lite - devinfo files for cyclone10lp
+ provides = quartus-free-devinfo
+
+pkgname = quartus-free-devinfo-cyclonev
+ pkgdesc = Quartus Prime Lite - devinfo files for cyclonev
+ provides = quartus-free-devinfo
+
+pkgname = quartus-free-devinfo-max
+ pkgdesc = Quartus Prime Lite - devinfo files for max
+ provides = quartus-free-devinfo
+
+pkgname = quartus-free-devinfo-max10
+ pkgdesc = Quartus Prime Lite - devinfo files for max10
+ provides = quartus-free-devinfo
diff --git a/.gitignore b/.gitignore
index 9749d4c02ac0..4f75970550e2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
-Quartus-*
+*Setup-*.run
+*.qdz
*.pkg.*
diff --git a/PKGBUILD b/PKGBUILD
index 33b168657747..22f125f3aa67 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,50 +1,82 @@
# Maintainer: Gabriel Souza Franco <Z2FicmllbGZyYW5jb3NvdXphQGdtYWlsLmNvbQ==>
+# Contributor: Nico Rumpeltin <$forename at $surname dot de>
# Contributor: Matthias Blaicher <matthias at blaicher dot com>
# Contributor: Danny Dutton <duttondj@vt.edu>
#
# NOTE: If you plan on using the usbblaster make sure you are member of the plugdev group.
#
-pkgname=quartus-free
-_mainver=19.1
+pkgbase=quartus-free
+_components=(${pkgbase}-{quartus,modelsim,help,devinfo-{arria_lite,cyclone{,10lp,v},max{,10}}})
+pkgname=(${pkgbase} ${_components[@]})
+_mainver=20.1
# Keep dot in _patchver
_patchver=.0
-_buildver=670
-_basever=.0.670
+_buildver=711
+_basever=.0.711
pkgver=${_mainver}${_patchver}.${_buildver}
pkgrel=1
-pkgdesc="Quartus Prime Lite Edition design software for Altera FPGA's"
+pkgdesc="Quartus Prime Lite design software for Intel FPGAs"
arch=('x86_64')
url="http://fpgasoftware.intel.com/?edition=lite"
license=('custom')
-_alteradir="/opt/altera/${_mainver}"
+_alteradir="/opt/intelFPGA/${_mainver}"
# According to the installer script, these dependencies are needed for the installer
depends=('lib32-expat' 'lib32-fontconfig' 'lib32-freetype2' 'lib32-glibc'
'lib32-gtk2' 'lib32-libcanberra' 'lib32-libpng' 'lib32-libice' 'lib32-libsm'
'lib32-util-linux' 'lib32-ncurses' 'lib32-ncurses5-compat-libs' 'lib32-zlib'
'lib32-libx11' 'lib32-libxau' 'lib32-libxdmcp' 'lib32-libxext' 'lib32-libxft'
- 'lib32-libxrender' 'lib32-libxt' 'lib32-libxtst' 'lib32-tkimg' 'libpng12')
+ 'lib32-libxrender' 'lib32-libxt' 'lib32-libxtst')
makedepends=('patchelf')
-source=("http://download.altera.com/akdlm/software/acdsinst/${_mainver}std${_patchver/.0/}/${_buildver}/ib_tar/Quartus-lite-${pkgver}-linux.tar"
- 'quartus.sh' 'quartus.desktop' 'modelsim-ase.desktop' '51-usbblaster.rules')
-sha256sums=('3546e90f6496b17c3c3e3e8582a3991940ad73ed112740428864460cfab6e40a'
- '2a3d61e6f01aa16c9d3ddd40e9741b9fd080496db5437530b4e38faf6771c1ed'
- 'f8ba2a84c6f7551bb4ab62d17f77e2814c70871ddb15f0276f1bf89cc6c674b8'
- 'a37738de447c50ca7bfe856466bd9567850ccf45ac6c3f0a6e63ef5bb863645f'
- 'dd9d33fa2698a0ec11ae86f4508f77e2e12bf4a21224f5b16640bc41d6c0999b')
+source=("http://download.altera.com/akdlm/software/acdsinst/${_mainver}std${_patchver/.0/}/${_buildver}/ib_installers/QuartusLiteSetup-${pkgver}-linux.run"
+ "http://download.altera.com/akdlm/software/acdsinst/${_mainver}std${_patchver/.0/}/${_buildver}/ib_installers/ModelSimSetup-${pkgver}-linux.run"
+ "http://download.altera.com/akdlm/software/acdsinst/${_mainver}std${_patchver/.0/}/${_buildver}/ib_installers/QuartusHelpSetup-${pkgver}-linux.run"
+ "http://download.altera.com/akdlm/software/acdsinst/${_mainver}std${_patchver/.0/}/${_buildver}/ib_installers/"{arria_lite,cyclone{,10lp,v},max{,10}}"-${pkgver}.qdz"
+ 'quartus.sh' 'quartus.desktop' 'modelsim-ase.sh' 'modelsim-ase.desktop' '51-usbblaster.rules')
+noextract=({arria_lite,cyclone{,10lp,v},max{,10}}"-${pkgver}.qdz") # Will extract directly to pkgdir
+md5sums=('e995b65f09aa0855770a2315cf7bc2ff'
+ '6c0b26510477d20896becca042c33917'
+ 'cbfc39a16bc6fcbb6862aa676e2fbcfb'
+ 'a439bb4873e69bd23e35aced3ea9ba8c'
+ '14e47510cea47dc0ed92c8cb97d76488'
+ 'af64dc8c95035dd084e9e8b621eb1378'
+ '2b30d36171d1beb159971f89206e6d9f'
+ '2ef442bc8872aa4e39ed3b313e13cc2a'
+ '10284d71211a02f6dd20cbc41c9ececb'
+ '737d51fcc74c8d6d2114c8f4ba79e4de'
+ 'c5a8f6310ade971f07e5ee6c4e338054'
+ 'ea5eca3341da1628e57f3efb7e074796'
+ 'a32f9e42db394016ce267c8d96f69cd5'
+ 'f5744dc4820725b93917e3a24df13da9')
options=(!strip !debug) # Stripping will takes ages, I'd avoid it
-PKGEXT=".pkg.tar" # Same for compression
+PKGEXT=".pkg.tar.zst" # ZSTD is fast enough for compression
-package() {
- echo "Notice: Requires around 24GB of free space during package building!"
- echo "Notice: The package file also requires around 16GB of free space"
- echo "Extracting install binaries and scripts from downloaded tar..."
+prepare() {
+ echo "Notice: Requires around 20GB of free space during package building!"
+ echo "Notice: The package files also requires around 8GB of free space"
- DISPLAY="" bash ./setup.sh --mode unattended --unattendedmodeui none --accept_eula 1 --installdir "${pkgdir}${_alteradir}"
+ chmod +x {QuartusLite,ModelSim,QuartusHelp}Setup-${pkgver}-linux.run
+}
+
+package_quartus-free() {
+ depends=(${_components[@]})
+ pkgdesc="Meta-package containing all Quartus Prime Lite tools and device libraries"
+}
+
+package_quartus-free-quartus() {
+ depends+=(quartus-free-devinfo)
+ optdepends=("eclipse: For Nios II EDS")
+
+ DISPLAY="" ./QuartusLiteSetup-${pkgver}-linux.run \
+ --disable-components quartus_help,devinfo,modelsim_ase,modelsim_ae \
+ --mode unattended \
+ --unattendedmodeui none \
+ --accept_eula 1 \
+ --installdir "${pkgdir}${_alteradir}"
# Remove uninstaller and install logs since we have a working package management
rm -r "${pkgdir}${_alteradir}/uninstall"
@@ -53,36 +85,29 @@ package() {
# Remove useless unzip binaries
find "${pkgdir}${_alteradir}" \( -name "unzip" -or -name "unzip32" \) -delete
+ # Remove duplicated file from help
+ rm -r "${pkgdir}${_alteradir}/quartus/common/help/webhelp"
+
# Fix interpreter for the license manager
for prog in quartus/linux64/{lmutil,lmgrd}; do
patchelf --set-interpreter /lib64/ld-linux-x86-64.so.2 "${pkgdir}${_alteradir}/${prog}"
done
- for prog in modelsim_ase/linuxaloem/{mgls/bin/,}{lmutil,lmgrd}; do
- patchelf --set-interpreter /lib/ld-linux.so.2 "${pkgdir}${_alteradir}/${prog}"
- done
- # Fix world writable permissions
- find "${pkgdir}${_alteradir}/nios2eds/documents" -perm -o+w -exec chmod go-w {} \+
+ # Fix missing permissions
+ find "${pkgdir}${_alteradir}" \! -perm /o+rwx -exec chmod o=g {} \;
# Replace altera directory in integration files
sed -i "s,_alteradir,${_alteradir},g" quartus.sh
sed -i "s,_alteradir,${_alteradir},g" quartus.desktop
- sed -i "s,_alteradir,${_alteradir},g" modelsim-ase.desktop
-
- # Fix modelsim startup code for Linux Kernel >=4.0
- # see https://wiki.archlinux.org/index.php/Altera_Design_Software
- sed -i 's,linux_rh60,linux,g' "${pkgdir}${_alteradir}/modelsim_ase/vco"
-
- # Modelsim bundles a copy of tkImg linked to old versions of libs
- # Replace by system version
- rm -rf "${pkgdir}${_alteradir}/modelsim_ase/linuxaloem/Img1.3"
- ln -s /usr/lib32/Img[0-9]* "${pkgdir}${_alteradir}/modelsim_ase/linuxaloem/Img"
# Remove pkgdir reference in sopc_builder
sed -i "s,${pkgdir},,g" "${pkgdir}${_alteradir}/quartus/sopc_builder/.sopc_builder"
- # Suppress spurious warning about linux-gate.so.1
- sed -i '/msg_system/a suppress = 3116' "${pkgdir}${_alteradir}/modelsim_ase/modelsim.ini"
+ # Fix world writable permissions
+ find "${pkgdir}${_alteradir}/nios2eds/documents" -perm -o+w -exec chmod go-w {} \+
+ find "${pkgdir}${_alteradir}/quartus/common/tcl" -perm -o+w -exec chmod go-w {} \+
+ find "${pkgdir}${_alteradir}/quartus/linux64" -perm -o+w -exec chmod go-w {} \+
+ find "${pkgdir}${_alteradir}/quartus/sopc_builder/bin/europa" -perm -o+w -exec chmod go-w {} \+
# Copy license file
install -D -m644 "${pkgdir}${_alteradir}/licenses/license.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
@@ -91,5 +116,64 @@ package() {
install -D -m755 quartus.sh "${pkgdir}/etc/profile.d/quartus.sh"
install -D -m644 51-usbblaster.rules "${pkgdir}/etc/udev/rules.d/51-usbblaster.rules"
install -D -m644 quartus.desktop "${pkgdir}/usr/share/applications/quartus.desktop"
+}
+
+package_quartus-free-modelsim() {
+ depends+=(lib32-alsa-lib lib32-libxi lib32-libxml2)
+ pkgdesc="Quartus Prime Lite - ModelSim-Intel FPGA Starter Edition"
+
+ DISPLAY="" ./ModelSimSetup-${pkgver}-linux.run \
+ --modelsim_edition modelsim_ase \
+ --mode unattended \
+ --unattendedmodeui none \
+ --accept_eula 1 \
+ --installdir "${pkgdir}${_alteradir}"
+
+ # Remove uninstaller and install logs since we have a working package management
+ rm -r "${pkgdir}${_alteradir}/uninstall"
+ rm -r "${pkgdir}${_alteradir}/logs"
+
+ for prog in modelsim_ase/linuxaloem/mgls/bin/{lmutil,lmgrd}; do
+ patchelf --set-interpreter /lib/ld-linux.so.2 "${pkgdir}${_alteradir}/${prog}"
+ done
+
+ # Fix missing permissions
+ find "${pkgdir}${_alteradir}" \! -perm /o+rwx -exec chmod o=g {} \;
+
+ # Replace altera directory in integration files
+ sed -i "s,_alteradir,${_alteradir},g" modelsim-ase.sh
+ sed -i "s,_alteradir,${_alteradir},g" modelsim-ase.desktop
+
+ # Fix modelsim startup code for Linux Kernel >=4.0
+ # see https://wiki.archlinux.org/index.php/Altera_Design_Software
+ sed -i 's,linux_rh60,linux,g' "${pkgdir}${_alteradir}/modelsim_ase/vco"
+
+ # Suppress spurious warning about linux-gate.so.1
+ sed -i '/msg_system/a suppress = 3116' "${pkgdir}${_alteradir}/modelsim_ase/modelsim.ini"
+
+ # Install integration files
+ install -D -m755 modelsim-ase.sh "${pkgdir}/etc/profile.d/modelsim-ase.sh"
install -D -m644 modelsim-ase.desktop "${pkgdir}/usr/share/applications/modelsim-ase.desktop"
}
+
+package_quartus-free-help() {
+ depends=(quartus-free-quartus)
+ pkgdesc="Quartus Prime Lite - help files"
+
+ DISPLAY="" ./QuartusHelpSetup-${pkgver}-linux.run --mode unattended --unattendedmodeui none --accept_eula 1 --installdir "${pkgdir}${_alteradir}"
+
+ # Remove uninstaller and install logs since we have a working package management
+ rm -r "${pkgdir}${_alteradir}/uninstall"
+ rm -r "${pkgdir}${_alteradir}/logs"
+}
+
+for _dev in {arria_lite,cyclone{,10lp,v},max{,10}}; do
+ eval "
+package_${pkgbase}-devinfo-${_dev}() {
+ provides=(quartus-free-devinfo)
+ pkgdesc='Quartus Prime Lite - devinfo files for ${_dev}'
+ install -d \"\${pkgdir}\${_alteradir}\"
+ bsdtar -xf \"${_dev}-\${pkgver}.qdz\" -C \"\${pkgdir}\${_alteradir}\"
+}
+"
+done
diff --git a/modelsim-ase.desktop b/modelsim-ase.desktop
index b685e0cba481..23e9355f1e7d 100644
--- a/modelsim-ase.desktop
+++ b/modelsim-ase.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Version=1.0
-Name=ModelSim-Altera Starter Edition
-Comment=ModelSim simulation software for Altera FPGA's
+Name=ModelSim-Intel FPGA Starter Edition
+Comment=ModelSim simulation software for Intel FPGAs
Exec=_alteradir/modelsim_ase/bin/vsim -gui -l /dev/null
Icon=_alteradir/modelsim_ase/modesim.gif
Terminal=false
diff --git a/modelsim-ase.sh b/modelsim-ase.sh
new file mode 100644
index 000000000000..b056e9d6e1c3
--- /dev/null
+++ b/modelsim-ase.sh
@@ -0,0 +1 @@
+export PATH=$PATH:_alteradir/modelsim_ase/bin
diff --git a/quartus.desktop b/quartus.desktop
index 49e86babb8e7..62194b2dc29a 100644
--- a/quartus.desktop
+++ b/quartus.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Version=1.0
-Name=Quartus II
-Comment=Quartus II design software for Altera FPGA's
+Name=Quartus Prime Lite
+Comment=Quartus Prime Lite design software for Intel FPGAs
Exec=_alteradir/quartus/bin/quartus --64bit
Icon=_alteradir/quartus/adm/quartusii.png
Terminal=false
diff --git a/quartus.sh b/quartus.sh
index cf627ae751f1..b6d67296a316 100644
--- a/quartus.sh
+++ b/quartus.sh
@@ -1,4 +1,4 @@
-export PATH=$PATH:_alteradir/quartus/bin:_alteradir/modelsim_ase/bin
+export PATH=$PATH:_alteradir/quartus/bin
# Detect if a 64bit machine and activate quartus
# depending on it.