summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD65
1 files changed, 21 insertions, 44 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 365221c4ed5e..2aee3375eeb5 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,6 +1,6 @@
# Maintainer: Jon Gjengset <jon@thesquareplanet.com>
pkgname=opensgx-git
-pkgver=r43.57cf92c
+pkgver=r47.40f48bf
pkgrel=1
pkgdesc="an open platform for Intel SGX"
arch=('x86_64')
@@ -13,21 +13,17 @@ install=
source=(
'opensgx-git::git+https://github.com/sslab-gatech/opensgx.git'
'opensgx-bin-paths.patch'
- 'demo-include-sgx.patch'
'opensgx-compile.patch'
'sgx-qemu-path.patch'
- 'sgx-h-paths.patch'
'test-sh.patch'
'sgx-compile'
)
md5sums=('SKIP'
- '58999f0f6a15026bf3f1a6c853f4f723'
- '6284157d5a2a1ce6ab44ca3577ab9eb2'
+ '4caf85f42c36ff31994539ad64e9ec26'
'e862b28b09581142af78369c6c65ce66'
'9ac0fa0ddae6d0e70f18992894bd1205'
- 'e65b4d1335c29babacaa0d5dbcbffe3a'
'48523504a8c9c6b4fc9175d143d87bf1'
- '2a5dd594a15d21ef549f3efe2b3ae406')
+ '1ff291421c523bacf735d1aa69a56661')
pkgver() {
cd "$srcdir/$pkgname"
@@ -43,50 +39,27 @@ prepare() {
msg2 "Fix binary paths in opensgx executable"
patch -Np1 -i '../opensgx-bin-paths.patch'
- msg2 "Fix sgx header paths"
- patch -Np1 -i '../sgx-h-paths.patch'
- test -d user/include/sgx || mkdir user/include/sgx
- mv user/include/*.h user/include/sgx
-
- test -L user/include/polarssl || mv user/include/polarssl user/include/sgx/
-
- cd user/include
- ln -sfn sgx/* ./
- test -L qemu || ln -sfn ../../../qemu/target-i386/ sgx/qemu
- cd ../../
-
msg2 "Make opensgx use sgx-compile"
patch -Np1 -i '../opensgx-compile.patch'
msg2 "Make test.sh use system sgx"
patch -Np1 -i '../test-sh.patch'
- msg2 "Make hello.c use <sgx.h>"
- patch -Np1 -i '../demo-include-sgx.patch'
-
msg2 "Configure QEMU"
- cd qemu
- ./configure-arch
+ cd qemu && ./configure-arch
}
build() {
cd "$srcdir/$pkgname"
msg2 "Build QEMU"
- cd qemu
- make
+ make -C qemu
- msg2 "Build PolarSSL"
- cd ../user/polarssl_sgx
- make
-
- cd ..
- msg2 "Make .os needed for .sgx compilation"
- make -dn demo/hello.sgx | grep 'Considering target file' | awk '{print $4}' | sed -e "s/'//g" -e 's/\.$//' | grep '\.o' | grep -v demo | xargs make
- make sgx.lds
+ msg2 "Build libsgx"
+ make -C libsgx
msg2 "Build userspace utilities"
- make
+ make -C user
}
package() {
@@ -95,27 +68,31 @@ package() {
# Binaries
install -d "$pkgdir/usr/bin"
install -m755 ./{sgx,sgx-dbg,opensgx} -t "$pkgdir/usr/bin/"
- install -m755 user/{sgx-tool,sgx-test-runtime,sgx-runtime} -t "$pkgdir/usr/bin/"
+ install -m755 user/{sgx-tool,sgx-runtime} -t "$pkgdir/usr/bin/"
install -Dm755 qemu/x86_64-linux-user/qemu-x86_64 "$pkgdir/usr/share/sgx/qemu"
install -m755 "$srcdir/sgx-compile" -t "$pkgdir/usr/bin/"
# Libraries
cd user
install -d "$pkgdir/usr/lib/sgx"
- all=$(make -dn demo/hello.sgx | grep 'Considering target file' | awk '{print $4}' | sed -e "s/'//g" -e 's/\.$//' | grep '\.o' | grep -v demo)
+ all=$(make -dn demo/hello.sgx | grep 'Considering target file' | awk '{print $4}' | sed -e "s/'//g" -e 's/\.$//' | grep '\.a' | grep -v demo)
for f in $all; do
- install -Dm644 "$f" -t "$pkgdir/usr/lib/sgx/$(dirname "$f")"
+ install -Dm644 "$f" "$pkgdir/usr/lib/sgx/$(basename "$f")"
done
cd ..
install -Dm644 "user/sgx.lds" "$pkgdir/usr/lib/sgx"
# Headers
- install -d "$pkgdir/usr/include/sgx/polarssl"
- install -d "$pkgdir/usr/include/sgx/qemu"
- install -m644 user/include/*.h -t "$pkgdir/usr/include/sgx"
- install -m644 user/include/polarssl/*.h -t "$pkgdir/usr/include/sgx/polarssl"
- install -m644 qemu/target-i386/*.h -t "$pkgdir/usr/include/sgx/qemu"
- mv "$pkgdir/usr/include/sgx/sgx-lib.h" "$pkgdir/usr/include/sgx.h"
+ install -d "$pkgdir/usr/include/sgx"
+ install -m644 libsgx/include/*.h -t "$pkgdir/usr/include/sgx"
+ install -m644 user/share/include/*.h -t "$pkgdir/usr/include/sgx"
+
+ # Fix header prefixes
+ for f in "$pkgdir/usr/include/sgx"/*.h; do
+ sed -i -e 's@#include <sgx-@#include <sgx/@g' "$f"
+ b="$(basename "$f")"
+ mv "$f" "$(dirname "$f")"/"${b#sgx-}"
+ done
}
# vim:set ts=2 sw=2 et: