]> rtime.felk.cvut.cz Git - orte.git/blobdiff - Makefile.git
Add shell.nix
[orte.git] / Makefile.git
index 170eb58abb215a3d175bfb49c61b2e717c65eb65..c8049fafba4bbbad1faf9b4d2cc946e2b397813b 100644 (file)
@@ -14,31 +14,61 @@ all:
 
 VER=$(shell git describe --match='v[0-9]*' | sed -e 's/^v\(.*\)/\1/')
 
+CONFIGURE_FLAGS = --enable-orte-idl
+
 configure: git
 
-check: configure
-       $(MAKE) -f Makefile.git check-windows check-autotools check-java
+check: check-omk check-autotools check-windows check-windows-omk check-java check-android
+
+check-%: configure
+       rm -rf _$@
+       mkdir -p _$@
+       $(MAKE) -C _$@ -f ../Makefile.git $@.real
+
+check-windows.real:
+# We don't have libIDL for mingw, so we check without --enable-orte-idl
+       ../configure --prefix=/ --host=i586-mingw32msvc CC=i586-mingw32msvc-gcc || \
+       ../configure --prefix=/ --host=i686-w64-mingw32 CC=i686-w64-mingw32-gcc
+       make
+       make install DESTDIR=$(CURDIR)/_install
+       test -f _install/bin/liborte-*.dll
+
+check-windows-omk.real:
+       echo "TARGET_OS=win32" > config.omk
+       echo "CC=i686-w64-mingw32-gcc" >> config.omk
+       echo "CXX=i686-w64-mingw32-g++" >> config.omk
+       echo "AR=i686-w64-mingw32-ar" >> config.omk
+       echo "LD=i686-w64-mingw32-ld" >> config.omk
+       echo "TARGET_LOADLIBES=pthread" >> config.omk
+       ln -s ../orte ../Makefile ../Makefile.omk ../Makefile.rules .
+       make
+
+check-omk.real:
+       ln -s ../orte ../Makefile ../Makefile.omk ../Makefile.rules .
+       make
 
-check-windows:
-       mkdir -p _check-win
-       cd _check-win && ../configure --host=i586-mingw32msvc CC=i586-mingw32msvc-gcc
-       cd _check-win && $(MAKE)
+check-autotools.real:
+       ../configure $(CONFIGURE_FLAGS)
+       make
 
-check-autotools:
-       mkdir -p _check-autotools
-       cd _check-autotools && ../configure
-       cd _check-autotools && $(MAKE)
+check-java.real: JAVAC=$(shell readlink -f $(shell which javac))
+check-java.real: JAVA_HOME=$(JAVAC:%/bin/javac=%)
+check-java.real:
+       test -d "$(JAVA_HOME)"
+       ../configure --with-java=$(JAVA_HOME)
+       $(MAKE)
+       ant -f ../orte/java/build.xml
+       test -f ../orte/java/lib/orte.jar
 
-check-java: JAVAC=$(shell readlink -f $(which javac))
-check-java: JAVA_HOME=$(JAVAC:%/bin/javac=%)
-check-java:
-       mkdir -p _check-java
-       cd _check-java && ../configure --with-java=$(JAVA_HOME)
-       cd _check-java && $(MAKE)
-       false # Java is not compiled - either fix it or update README
+check-android:
+       android update project -p orte/libaorte
+       android update project -p orte/contrib/Robot_Demo
+       cd orte/libaorte && ndk-build
+       cd orte/contrib/Robot_Demo && ant debug
+       test -f orte/contrib/Robot_Demo/bin/RoboDruid-debug.apk
 
 dist:
-       $(MAKE) VER=$(VER) dist-tarball dist-check
+       $(MAKE) -f Makefile.git VER=$(VER) dist-tarball dist-check
        @echo "Tarball stored as orte-$(VER).tar.gz"
 
 dist-tarball: orte-$(VER).tar.gz
@@ -47,7 +77,7 @@ orte-$(VER).tar.gz: $(shell git ls-files)
 # Export clean sources and run autoreconf
        test ! -d orte-$(VER)
        git archive --format=tar --prefix=orte-$(VER)/ HEAD | tar x
-       make -C orte-$(VER) -f Makefile.cvs
+       make -C orte-$(VER) -f Makefile.git
        rm -rf orte-$(VER)/autom4te.cache
 # Export sources again for building of documentation and copy generated orte manual to release dir
        test ! -d orte-$(VER)-doc
@@ -64,7 +94,7 @@ dist-check: orte-$(VER).tar.gz
        tar xf $<
 # Check that we can compile the content of the tarball
        mkdir orte-$(VER)/_build
-       cd orte-$(VER)/_build && ../configure && make V=0
+       cd orte-$(VER)/_build && ../configure $(CONFIGURE_FLAGS) && make V=0
        mkdir orte-$(VER)/_win
        cd orte-$(VER)/_win && ../configure --host=i686-w64-mingw32 CC=i686-w64-mingw32-gcc && make V=0
        rm -rf orte-$(VER)