/
PKGBUILD
93 lines (75 loc) · 2.87 KB
/
PKGBUILD
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
# Contributor: Mehdi Chinoune <mehdi.chinoune@hotmail.com>
_realname=orcus
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=0.19.2
pkgrel=2
pkgdesc="Standalone file import filter library for spreadsheet documents (ODS, XLSX and CSV). (mingw-w64)"
arch=('any')
mingw_arch=('ucrt64' 'clang64' 'clangarm64')
url='https://gitlab.com/orcus/orcus'
msys2_references=(
'archlinux: liborcus'
)
license=('spdx:MPL-2.0')
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-boost"
"${MINGW_PACKAGE_PREFIX}-ixion"
"${MINGW_PACKAGE_PREFIX}-zlib")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-autotools"
"${MINGW_PACKAGE_PREFIX}-mdds"
"${MINGW_PACKAGE_PREFIX}-python")
optdepends=("${MINGW_PACKAGE_PREFIX}-python: Python bindings")
source=("https://gitlab.com/orcus/orcus/-/archive/${pkgver}/${_realname}-${pkgver}.tar.bz2"
"001-fix-build-on-mingw.patch"
"002-workaround-for-gcc.patch")
sha256sums=('d5e443bc5dbfd2271eee792bbd7048bc3675da41007b0c410e9c8dca56433638'
'1b86bbb84e69f5ea0d5de766537acc5108f299b2a3cfa1732341c9bd2eb32d41'
'd2b76a347e6f8bfd09ef104aa1abd7add59b5ec108df65db7a562f248311d30c')
prepare() {
cd ${_realname}-${pkgver}
patch -p1 -i "${srcdir}"/001-fix-build-on-mingw.patch
if [[ ${MINGW_PACKAGE_PREFIX} != *-clang-* ]]; then
patch -p1 -i "${srcdir}"/002-workaround-for-gcc.patch
fi
autoreconf -fiv
}
build() {
mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"
export lt_cv_deplibs_check_method='pass_all'
declare -a _extra_config
if [[ ${MINGW_PACKAGE_PREFIX} != *-clang-* ]]; then
_extra_config+=("--disable-spreadsheet-model" "--disable-python")
fi
if [[ ${CARCH} == x86_64 ]]; then
_extra_config+=("--with-cpu-features")
fi
../${_realname}-${pkgver}/configure \
--prefix=${MINGW_PREFIX} \
--without-benchmark \
"${_extra_config[@]}"
make
}
check() {
cd "${srcdir}/build-${MSYSTEM}"
make check || true
}
package() {
cd "${srcdir}/build-${MSYSTEM}"
DESTDIR="${pkgdir}" make install
MSYS2_ARG_CONV_EXCL="-p" python -m compileall \
-o 0 -o 1 -q -s"${pkgdir}" -p"/" "${pkgdir}${MINGW_PREFIX}/lib/python"*
PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
find "${pkgdir}${MINGW_PREFIX}/lib/pkgconfig" -type f -name '*.pc' \
-exec sed -i -e "s|${PREFIX_WIN}|\$\{prefix\}|g" {} \;
if [[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]]; then
# Use *.pyd extension for python modules
for _dll in "${pkgdir}${MINGW_PREFIX}"/lib/python3.11/site-packages/*.dll; do
mv ${_dll} ${_dll/.dll/.pyd}
done
# remove unused import libraries
rm -f "${pkgdir}${MINGW_PREFIX}"/lib/python3.11/site-packages/*.dll.a
fi
install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
}