Added Python3. (Still testing integration)
This commit is contained in:
98
project/jni/python3/Makefile
Normal file
98
project/jni/python3/Makefile
Normal file
@@ -0,0 +1,98 @@
|
||||
## Setup.
|
||||
|
||||
all: build
|
||||
|
||||
# Get configuration.
|
||||
mk/env.mk: env
|
||||
@bash --noprofile --norc -c 'source ./env; set -o posix; set' | egrep '^(ANDROID|SDK|NDK|BUILD|TEST|PYTHON)_' > $@
|
||||
-include mk/env.mk
|
||||
|
||||
# A formula.
|
||||
define formula
|
||||
$1: $1-$2
|
||||
|
||||
#$1-$2: ndk $3
|
||||
$1-$2: $3
|
||||
$$(info Checking $1 $2 sources...)
|
||||
@wget -N -P "src/" -i "mk/$1/$2/sources.txt"
|
||||
ifeq ("$$(wildcard build/.built-$(BUILD_IDENTIFIER)/$1-$2)","")
|
||||
$$(info Building $1 $2...)
|
||||
@bash --noprofile --norc mk/build_single.sh $1 $2
|
||||
@mkdir -p build/.built-$(BUILD_IDENTIFIER)
|
||||
@touch build/.built-$(BUILD_IDENTIFIER)/$1-$2
|
||||
endif
|
||||
endef
|
||||
|
||||
|
||||
## Building.
|
||||
|
||||
build: python_modules python
|
||||
|
||||
# Main Python.
|
||||
$(eval $(call formula,python,3.4.3))
|
||||
|
||||
# Optional Python modules.
|
||||
python_modules: $(foreach mod,$(subst ',,$(PYTHON_OPTIONAL_MODULES)),python_$(mod))
|
||||
|
||||
# Python lzma support.
|
||||
$(eval $(call formula,xz,5.2.1))
|
||||
python_lzma: xz
|
||||
|
||||
# Python bzip2 support.
|
||||
$(eval $(call formula,bzip2,1.0.6))
|
||||
python_bz2: bzip2
|
||||
|
||||
# Python readline support.
|
||||
$(eval $(call formula,readline,6.3))
|
||||
python_readline: readline
|
||||
|
||||
# Python SSL support.
|
||||
$(eval $(call formula,openssl,1.0.2d))
|
||||
python_ssl: openssl
|
||||
|
||||
# Python curses support.
|
||||
$(eval $(call formula,ncurses,5.9))
|
||||
python_curses: ncurses
|
||||
|
||||
# Python SQLite support.
|
||||
$(eval $(call formula,sqlite,3.8.10.2))
|
||||
python_sqlite3: sqlite
|
||||
|
||||
# Python (g)dbm support.
|
||||
$(eval $(call formula,gdbm,1.11))
|
||||
python_gdbm: gdbm
|
||||
|
||||
|
||||
# Android NDK.
|
||||
#ndk:
|
||||
# $(info Checking NDK sources...)
|
||||
# @wget -N -P "sdk/" $(shell bash mk/ndk_source.sh)
|
||||
#ifeq ("$(wildcard build/.built-ndk-$(BUILD_IDENTIFIER))","")
|
||||
# $(info Preparing NDK toolchain...)
|
||||
# @bash --noprofile --norc mk/build_ndk.sh
|
||||
# @touch build/.built-ndk-$(BUILD_IDENTIFIER)
|
||||
#endif
|
||||
|
||||
|
||||
## Cleaning.
|
||||
|
||||
clean: clean_generated clean_builds
|
||||
@rm -rf "$(ANDROID_TEST_PREFIX)"
|
||||
@rm -rf "$(ANDROID_TOOL_PREFIX)"
|
||||
|
||||
clean_generated:
|
||||
@find ./src -mindepth 1 -maxdepth 1 -type d -exec rm -rf "{}" \;
|
||||
|
||||
clean_builds:
|
||||
@rm -rf "$(ANDROID_PREFIX)"
|
||||
|
||||
|
||||
## Testing.
|
||||
|
||||
test: test_setup
|
||||
@bash --noprofile --norc mk/test.sh
|
||||
|
||||
test_setup:
|
||||
ifeq ("$(wildcard build-vm/$(TEST_IDENTIFIER))","")
|
||||
@bash --noprofile --norc mk/test_setup.sh
|
||||
endif
|
||||
Reference in New Issue
Block a user