blob: 59dd99bf07d6dd4bd2a4de26dca2dd5bbb0ebac5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
# Maintainer: rpx <rpx at clearlight dot systems>
#
# Debian-compiled binaries.
# requires libxml2.so.2 from Arch archive.
# Thanks to Enzi, Unity Engine Forum:
# https://discussions.unity.com/t/arch-libxml2-so-2-is-missing/1637394
pkgname=openvsp-bin
pkgdesc='A parametric aircraft geometry tool'
pkgver=3.43.0
pkgrel=1
arch=('i686' 'x86_64')
url='https://openvsp.org'
license=('NASA OPEN SOURCE AGREEMENT VERSION 1.3')
depends=(
'cblas'
'cminpack'
'freeglut'
'gcc'
'git'
'glew'
'libxml2'
'pandoc'
'python'
'swig')
optdepends=(
'doxygen: generate documentation'
'graphviz: generate documentation')
makedepends=('cmake' 'unzip')
_name=OpenVSP-OpenVSP_${pkgver}
# requires libxml2.so.2 from Arch archive.
libxml2_pkgver=2.13.8
libxml2_pkgrel=1
source=("${pkgname}-${pkgver}.deb"::"https://openvsp.org/download.php?file=zips/current/linux/OpenVSP-${pkgver}-Ubuntu-24.04_amd64.deb"
"https://archive.archlinux.org/packages/l/libxml2/libxml2-${libxml2_pkgver}-1-x86_64.pkg.tar.zst")
sha256sums=('ca055b7dba5f4d950c11ddc107b67f0d4e7839026c2b5f88a6bab8d72c6d67ca'
'2a1b0ab11ff213a57268d20fff183e3fd3e4ab9191aeed473de336b77bdfa6e1')
prepare() {
mkdir -p "${srcdir}/build"
mkdir -p "${srcdir}/lib"
}
build() {
# Debian package is just an ar archive containing two tars.
ar x ${pkgname}-${pkgver}.deb
# Delete the remainder
rm debian-binary control.tar.gz ${pkgname}-${pkgver}.deb
# Put the package into form standard for compilation from source
mv data.tar.gz "${srcdir}/build/OpenVSP-${pkgver}-Linux.tar.gz"
bsdtar -xf "${srcdir}/libxml2-${libxml2_pkgver}-1-x86_64.pkg.tar.zst" -C "${srcdir}" $"usr/lib/libxml2.so.${libxml2_pkgver}"
}
package() {
cd ${srcdir}/build
tar xvf "OpenVSP-${pkgver}-Linux.tar.gz"
mv ./opt/OpenVSP "./OpenVSP-${pkgver}-Linux" && rmdir opt
cd "./OpenVSP-${pkgver}-Linux"
mkdir -p ${pkgdir}/usr/share/${pkgname}
# binaries
cp vsp vspaero vspscript vsploads vspaero_adjoint vspaero_complex vspaero_opt vspviewer \
${pkgdir}/usr/share/${pkgname}
# misc
cp README.md ${pkgdir}/usr/share/${pkgname}
cp LICENSE ${pkgdir}/usr/share/${pkgname}
cp vspIcon.png ${pkgdir}/usr/share/${pkgname}
cp -r airfoil ${pkgdir}/usr/share/${pkgname}
cp -r CustomScripts ${pkgdir}/usr/share/${pkgname}
cp -r help ${pkgdir}/usr/share/${pkgname}
cp -r matlab ${pkgdir}/usr/share/${pkgname}
test -d python && cp -r python ${pkgdir}/usr/share/${pkgname}
cp -r scripts ${pkgdir}/usr/share/${pkgname}
cp -r textures ${pkgdir}/usr/share/${pkgname}
cp -r vspaero_ex ${pkgdir}/usr/share/${pkgname}
# binary symlinks, relative
mkdir -p ${pkgdir}/usr/bin
cd ${pkgdir}/usr/share/${pkgname}
ln -sr vsp vspaero vspscript vsploads vspaero_adjoint vspaero_complex vspaero_opt vspviewer \
${pkgdir}/usr/bin/
# libraries missing in Arch
mkdir -p ${pkgdir}/usr/lib
# libxml2.so.2
install -m 755 "${srcdir}/usr/lib/libxml2.so.${libxml2_pkgver}" "$pkgdir/usr/lib/libxml2.so.${libxml2_pkgver}"
ln -sf $"libxml2.so.${libxml2_pkgver}" "$pkgdir/usr/lib/libxml2.so.2"
}
|