remove require gls from AndroidManifest.xml
[fltk_mvc_template.git] / setup.sh
index d6bcdd2..e0b9eba 100755 (executable)
--- a/setup.sh
+++ b/setup.sh
@@ -1,11 +1,64 @@
 #!/bin/bash
+#######################################
+# Author: Daniel Giritzer
+# E-Mail: daniel@giritzer.eu
+# Remarks: Tested with debian 9 stretch
+#######################################
 
-if [ "$#" -ne 1 ]; then
-    echo "Usage: setup.sh name_of_project"
-    exit 1
-fi
+## Create new template
+setup(){
+       cp -rf ./_template ./$1
+       find ./$1 ! -name '*.zip' ! -name '*.tar.gz' -type f -exec sed -i 's/_template/'"$1"'/g' {} \;
+       find ./$1 -depth -name '*_template*' -exec rename 's/_template/'"$1"'/' {} ";"
+}
 
-cp -rf ./_template ./$1
-find ./$1 -type f -exec sed -i 's/_template/'"$1"'/g' {} \;
-find ./$1 -depth -name '*_template*' -exec rename 's/_template/'"$1"'/' {} ";"
+
+## Install and setup your Debian system for this template
+install_deps(){
+       # add architectures
+       sudo dpkg --add-architecture i386
+       sudo dpkg --add-architecture armhf
+       sudo apt update
+
+       # install packages
+       sudo apt install -y rename sed make cmake libtool autoconf automake \
+       build-essential gcc-multilib g++-multilib libasound2-dev:i386 libx11-dev:i386 libxext-dev:i386 libao-dev:i386 \
+       crossbuild-essential-armhf libasound2-dev:armhf libx11-dev:armhf libxext-dev:armhf libao-dev:armhf qemu-user-static \
+       mingw-w64 binutils-mingw-w64 p7zip-full \
+       wine wine32 wine64 libwine libwine:i386 fonts-wine wine-binfmt \
+       android-sdk google-android-ndk-installer android-sdk-platform-23
+
+       # register .exe files to be executed via wine
+       sudo update-binfmts --import /usr/share/binfmts/wine
+
+       # create debug keystore to sign android packages
+       mkdir ~/.android
+       cd ~/.android
+       keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000
+}
+
+case "$1" in
+  setup)
+       if [ "$#" -ne 2 ]; then
+               echo "Usage: setup.sh setup [name_of_project]"
+               exit 1
+       fi
+       setup $2
+        ;;
+
+  install_deps)
+       install_deps
+        ;;
+
+  *)
+        echo "Usage: ./setup.sh [option] [parameter]"
+        echo "........................"
+        echo "avaiable options:"
+       echo "setup        - Create new project. (pass as parameter your project name.)"
+       echo "install_deps - Install and setup all needed dependencies (cross compilers etc.)."
+        echo "........................"
+       echo "(c) Daniel Giritzer 2019"
+        ;;
+esac
+: