leap-sdk-python3/Makefile

39 lines
1.4 KiB
Makefile

PREFIX := $(if $(PREFIX),$(PREFIX),/usr)
PYTHON3_VERSION := $(shell python3 --version | cut -d' ' -f 2 | cut -d. -f 1,2)
ARCH := $(shell uname -m | sed -e 's/x86_64/x64/')
SDK_PATH=./leap/LeapSDK
all:
[ -f ./LeapSDK.tar.gz ] || wget -O LeapSDK.tar.gz http://warehouse.leapmotion.com/apps/4185/download/
mkdir -p leap
tar xvf LeapSDK.tar.gz -C leap --strip-components 1
cp -r $(SDK_PATH)/include ./include
wget http://tinyurl.com/leap-i-patch -O Leap.i.diff
patch -p0 < Leap.i.diff
swig-3 -c++ -python -o LeapPython.cpp -interface LeapPython ./include/Leap.i
g++ -fPIC -I/usr/include/python$(PYTHON3_VERSION)m -I/usr/include/python$(PYTHON3_VERSION) -I$(SDK_PATH)/include LeapPython.cpp $(SDK_PATH)/lib/$(ARCH)/libLeap.so -shared -o LeapPython.so
clean:
rm -rf __pycache__
rm -rf include
rm -rf leap
rm -f Leap.i.diff
rm -f LeapPython.cpp
rm -f LeapPython.h
rm -f LeapPython.so
rm -f Leap.py
rm -f LeapSDK.tar.gz
install:
mkdir -p $(PREFIX)/lib/python$(PYTHON3_VERSION)/site-packages/
install -m 0644 Leap.py $(PREFIX)/lib/python$(PYTHON3_VERSION)/site-packages/Leap.py
install -m 0755 LeapPython.so $(PREFIX)/lib/python$(PYTHON3_VERSION)/site-packages/LeapPython.so
install -m 0755 $(SDK_PATH)/lib/$(ARCH)/libLeap.so $(PREFIX)/lib/libLeap.so
uninstall:
rm -f $(PREFIX)/lib/python$(PYTHON3_VERSION)/site-packages/Leap.py
rm -f $(PREFIX)/lib/python$(PYTHON3_VERSION)/site-packages/LeapPython.so
rm -f $(PREFIX)/lib/libLeap.so