summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: cceb23a78bbd59c3174a6d83098b6156550e9b59 (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
# Maintainer: Luis Martinez <luis dot martinez at disroot dot org>
# Maintainer: taotieren <admin@taotieren.com>

pkgname=yoctopuce
pkgver=2.0.64286
pkgrel=2
pkgdesc="C++ library for interfacing with Yoctopuce devices"
arch=($CARCH)
url="https://github.com/yoctopuce/yoctolib_cpp"
license=('LicenseRef-custom')
groups=('yoctopuce-libs')
depends=(
	gcc-libs
	glibc
	libusb
)
makedepends=(java-runtime)
provides=('libyocto.so' 'libyapi.so')
source=("$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
	'LICENSE'
)
sha256sums=('2ba89d6867ba5add43d7bff4f25869e00cebed9612448686ce1385bc9136e0df'
            '2b22a5342677bd71e40e9fadab57146a8662ded89e97ac98b8726fb9a0e22e30')

build() {
	export CFLAGS+=" ${CPPFLAGS}"
	export CXXFLAGS+=" ${CPPFLAGS}"
	export LDFLAGS+=" ${LDFLAGS}"

	make -C "${srcdir}/yoctolib_cpp-$pkgver/Binaries"
}

package() {
	# 	local x86_64=64bits i686=32bits armv7h=armhf
	install -Dm644 ${srcdir}/LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
	cd "${srcdir}/yoctolib_cpp-$pkgver"
	# 	install -Dm644 "Binaries/linux/${CARCH}/"libyocto.so.* -t "$pkgdir/usr/lib/"
	# 	install -Dm644 "Binaries/linux/${CARCH}/yapi/"libyapi.so.* -t "$pkgdir/usr/lib/"
	declare -A libs
	libs=(
		["libyapi"]="Binaries/linux/${CARCH}/yapi"
		["libyocto"]="Binaries/linux/${CARCH}"
	)

	target_dir="/usr/lib"

	for lib in "${!libs[@]}"; do
		dir="${libs[$lib]}"

		full_version=$(ls "${dir}/${lib}.so."* | grep -oP '\d+(\.\d+)+')

		if [ -z "$full_version" ]; then
			echo "No found ${lib}"
			continue
		fi

		major_version=$(echo "$full_version" | cut -d '.' -f 1)

		install -Dm644 "${dir}/${lib}.so.${full_version}" "${pkgdir}/${target_dir}/${lib}.so.${full_version}"
		ln -sf "${target_dir}/${lib}.so.${full_version}" "${pkgdir}/${target_dir}/${lib}.so"
		ln -sf "${target_dir}/${lib}.so.${full_version}" "${pkgdir}/${target_dir}/${lib}.so.${major_version}"
	done

	install -Dm644 udev_conf/51-yoctopuce_group.rules -t "$pkgdir/usr/lib/udev/rules.d/"
	install -Dm644 Documentation/yoctolib-cpp* -t "$pkgdir/usr/share/doc/${pkgname}/"
}