From http://www.jwz.org/xscreensaver/xscreensaver-5.39.tar.gz
[xscreensaver] / android / Makefile
index f296352011d29d9f3263e8a2ef0ad8e83de90659..bd5d15dfc39aee4384fe89c4eb278af89a813c69 100644 (file)
@@ -1,7 +1,7 @@
 # XScreenSaver for Android
 
 export TERM=dumb
-GRADLE = cd project ; ./gradlew
+GRADLE = ./gradlew
 
 default:: debug
 all:: release
@@ -40,13 +40,18 @@ export ANDROID_HACKS=               \
        abstractile             \
        anemone                 \
        anemotaxis              \
+       antmaze                 \
+       antspotlight            \
        apollonian              \
+       atlantis                \
        attraction              \
        atunnel                 \
+       binaryring              \
        blaster                 \
        blinkbox                \
        blocktube               \
        boing                   \
+       bouboule                \
        bouncingcow             \
        boxed                   \
        boxfit                  \
@@ -54,22 +59,34 @@ export ANDROID_HACKS=               \
        bsod                    \
        cage                    \
        ccurve                  \
+       celtic                  \
+       circuit                 \
        cloudlife               \
        companioncube           \
        compass                 \
        coral                   \
+       crackberg               \
+       crumbler                \
        crystal                 \
+       cube21                  \
+       cubenetic               \
+       cubestack               \
        cubestorm               \
+       cubetwist               \
+       cubicgrid               \
        cwaves                  \
        cynosure                \
        dangerball              \
        decayscreen             \
        deco                    \
+       deluxe                  \
        demon                   \
+       discoball               \
        discrete                \
        distort                 \
        dnalogo                 \
        drift                   \
+       dymaxionmap             \
        energystream            \
        engine                  \
        epicycle                \
@@ -88,23 +105,33 @@ export ANDROID_HACKS=              \
        gears                   \
        geodesic                \
        geodesicgears           \
+       gflux                   \
+       glblur                  \
        glcells                 \
+       glhanoi                 \
        glknots                 \
        glmatrix                \
+       glplanet                \
        glschool                \
        glsnake                 \
        gltext                  \
+       goop                    \
        grav                    \
        greynetic               \
+       halo                    \
        helix                   \
        hexadrop                \
+       hexstrut                \
        hilbert                 \
        hopalong                \
+       hypertorus              \
        hypnowheel              \
        ifs                     \
        imsmap                  \
+       interaggregate          \
        interference            \
        intermomentary          \
+       jigsaw                  \
        julia                   \
        kaleidescope            \
        kaleidocycle            \
@@ -115,28 +142,41 @@ export ANDROID_HACKS=             \
        loop                    \
        m6502                   \
        maze                    \
+       maze3d                  \
        memscroller             \
        menger                  \
        metaballs               \
+       mirrorblob              \
+       moebius                 \
        moebiusgears            \
        moire                   \
+       moire2                  \
        morph3d                 \
+       mountain                \
+       munch                   \
        nerverot                \
        noof                    \
+       noseguy                 \
+       peepers                 \
        penetrate               \
        penrose                 \
        petri                   \
        piecewise               \
        pinion                  \
+       pipes                   \
        polytopes               \
        pong                    \
        popsquares              \
+       projectiveplane         \
        providence              \
+       pulsar                  \
        pyro                    \
        quasicrystal            \
        raverhoop               \
+       razzledazzle            \
        rd-bomb                 \
        ripples                 \
+       rocks                   \
        romanboy                \
        rorschach               \
        rotzoomer               \
@@ -146,14 +186,19 @@ export ANDROID_HACKS=             \
        shadebobs               \
        sierpinski              \
        sierpinski3d            \
+       skytentacles            \
        slidescreen             \
+       slip                    \
+       spheremonics            \
+       splitflap               \
+       splodesic               \
        squiral                 \
        stairs                  \
-       starfish                \
        stonerview              \
        strange                 \
        substrate               \
        superquadrics           \
+       surfaces                \
        swirl                   \
        tangram                 \
        thornbird               \
@@ -161,16 +206,20 @@ export ANDROID_HACKS=             \
        topblock                \
        triangle                \
        tronbit                 \
+       truchet                 \
        twang                   \
        unknownpleasures        \
        vermiculate             \
+       vigilance               \
        voronoi                 \
        wander                  \
        whirlwindwarp           \
        winduprobot             \
        wormhole                \
        xflame                  \
+       xjack                   \
        xlyap                   \
+       xrayswarm               \
        xspirograph             \
 
 
@@ -178,75 +227,37 @@ export ANDROID_HACKS=             \
 #
 ANDROID_TODO=                  \
        antinspect              \
-       antmaze                 \
-       antspotlight            \
-       atlantis                \
        barcode                 \
-       binaryring              \
        blitspin                \
-       bouboule                \
        bumps                   \
        carousel                \
-       celtic                  \
-       circuit                 \
        cityflow                \
-       crackberg               \
-       cube21                  \
-       cubenetic               \
-       cubicgrid               \
-       deluxe                  \
-       dymaxionmap             \
        endgame                 \
+       esper                   \
        flipscreen3d            \
        fliptext                \
        fontglide               \
-       gflux                   \
-       glblur                  \
        gleidescope             \
-       glhanoi                 \
-       glplanet                \
        glslideshow             \
-       goop                    \
        halftone                \
-       halo                    \
-       hypertorus              \
-       interaggregate          \
        jigglypuff              \
-       jigsaw                  \
        juggler3d               \
-       mirrorblob              \
-       moebius                 \
-       moire2                  \
        molecule                \
-       mountain                \
-       munch                   \
-       noseguy                 \
        pedal                   \
        phosphor                \
        photopile               \
-       pipes                   \
        polyominoes             \
-       projectiveplane         \
-       pulsar                  \
        qix                     \
        queens                  \
-       rocks                   \
-       skytentacles            \
-       slip                    \
        speedmine               \
-       spheremonics            \
-       splitflap               \
        spotlight               \
+       starfish                \
        starwars                \
-       surfaces                \
        tessellimage            \
        testx11                 \
-       truchet                 \
        unicrud                 \
        xanalogtv               \
-       xjack                   \
        xmatrix                 \
-       xrayswarm               \
        zoom                    \
 
 
@@ -269,8 +280,17 @@ CVT  = -thumbnail '150x150^' -gravity center -extent 150x150 \
     -quality 95 \
     +dither -colors 128
 
+# If we are making the m6502 hack, create the header file for Android
+m6502.h::
+       @for h in $(ANDROID_HACKS) ; do \
+               if [ $${h} = "m6502" ] ; then \
+                       echo "Making $${h} header ..."; \
+                       ../hacks/m6502.sh ../hacks/m6502.h ../hacks/images/m6502/*.asm ; \
+                       echo "Made $${h} header"; \
+               fi; \
+       done
 
-project/xscreensaver/res/drawable/%.png:
+xscreensaver/res/drawable/%.png:
        @\
        FILE1=`echo "$@" | sed 's!^.*/\([^/]*\)\.png$$!\1.jpg!'` ;      \
        FILE2="$@" ;                                                    \
@@ -288,26 +308,29 @@ project/xscreensaver/res/drawable/%.png:
 
 thumbs::
        @for f in $(ANDROID_HACKS) $(ANDROID_TODO) ; do                 \
-         $(MAKE) project/xscreensaver/res/drawable/$$f.png ;           \
+         $(MAKE) xscreensaver/res/drawable/$$f.png ;                   \
        done
 
 clean_thumbs::
        @\
        for f in $(ANDROID_HACKS) $(ANDROID_TODO) ; do                  \
-         rm -f project/xscreensaver/res/drawable/$$f.png ;             \
+         rm -f xscreensaver/res/drawable/$$f.png ;                     \
        done
-distclean:: clean_thumbs
+
+distclean:: clean_thumbs clean
 
 
-EXTRA_TARFILES = project/xscreensaver/res/drawable/thumbnail.png \
+EXTRA_TARFILES = xscreensaver/res/drawable/thumbnail.png \
 
 echo_tarfiles:
        @FILES=`find . $(EXTRA_TARFILES) \( \(  \
                   -name .DS_Store              \
                -o -name '*~'                   \
+               -o -name '*.jks'                \
                -o -name '*.keystore'           \
                -o -name '*_dream.xml'          \
                -o -name '*_settings.xml'       \
+               -o -name '*_wallpaper.xml'      \
                -o -name AndroidManifest.xml    \
                -o -name strings.xml            \
                -o -name settings.xml           \
@@ -326,24 +349,30 @@ echo_tarfiles:
                | sort` ;                       \
        echo $$FILES
 
-debug::
+images_png_h:
+       cd ../hacks/images && $(MAKE)
+
+run_check::
+       ../hacks/check-configs.pl --build-android $(ANDROID_HACKS)
+
+debug:: m6502.h run_check images_png_h
        $(GRADLE) assembleDebug
-release::
+release:: m6502.h run_check images_png_h
        export APP_ABI=all ; \
        $(GRADLE) assembleRelease
 
 
-KEYSTORE = xscreensaver.keystore
+KEYSTORE = xscreensaver.jks
 $(KEYSTORE):
        keytool -genkey -v -keystore $@ \
        -alias xscreensaver -keyalg RSA -keysize 2048 -validity 10000
 
-APK_DIR       = project/xscreensaver/build/outputs/apk/
-APK_UNSIGNED  = $(APK_DIR)/xscreensaver-release-unsigned.apk
-APK_UNALIGNED = $(APK_DIR)/xscreensaver-release-unaligned.apk
-APK_SIGNED    = $(APK_DIR)/xscreensaver-release.apk
+APK_DIR       = xscreensaver/build/outputs/apk/
+APK_UNSIGNED  = $(APK_DIR)xscreensaver-release-unsigned.apk
+APK_UNALIGNED = $(APK_DIR)xscreensaver-release-unaligned.apk
+APK_SIGNED    = $(APK_DIR)xscreensaver-release.apk
 
-  TOOLDIR = $(shell echo $$HOME/Library/Android/sdk/build-tools/* | tail -1)
+  TOOLDIR = $(shell ls -d $$HOME/Library/Android/sdk/build-tools/* | tail -1)
  ZIPALIGN = $(TOOLDIR)/zipalign
 JARSIGNER = jarsigner
 
@@ -380,3 +409,8 @@ apk:: release
 #  dnalogo                     \
 #  twang                       \
 #  memscroller                 \
+#  phosphor                    \
+#  discoball                   \
+#  cubetwist                   \
+#  cubestack                   \
+#  splodesic                   \