]> WPIA git - gigi.git/commitdiff
upd: native Makefile improvements
authorLucas Werkmeister <mail@lucaswerkmeister.de>
Fri, 9 Sep 2016 20:19:31 +0000 (22:19 +0200)
committerLucas Werkmeister <mail@lucaswerkmeister.de>
Sat, 10 Sep 2016 07:48:10 +0000 (09:48 +0200)
- Remove optimization. We don't need it, and -O3 in particular can
  introduce bugs.
- Move -I directives to preprocessor flags.
- Add a separate goal for the header file instead of using shell &&.
- Use the special variable $(RM) to remove files, and ignore failures if
  some files don't exist.

Change-Id: Icb7bd684bae6bdb860712a4e24d880b265db292a

natives/Makefile

index 3fbf922b64918965c626c480189f48f060c50e14..4fa62a79922a3b1fa3be66e065f113bf8fcc3f8c 100644 (file)
@@ -2,17 +2,18 @@ JAVA_HOME=/usr/lib/jvm/default-java
 SYSTEM= $(shell uname | awk '{print tolower($$0)}')
 JAVAH=javah
 CC=gcc
-CFLAGS=-O3 -g -flto -Wall -Werror -Wextra -pedantic -fPIC
-CFLAGS+=-I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/$(SYSTEM)
+CFLAGS=-flto -Wall -Werror -Wextra -pedantic -fPIC
+CPPFLAGS=-I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/$(SYSTEM)
 LDFLAGS=-shared
 
 
 all: libsetuid.so
 
-libsetuid.so: org_cacert_gigi_natives_SetUID.c
-       $(JAVAH) -classpath ../bin/ -jni org.cacert.gigi.natives.SetUID && \
-       $(CC) $(CFLAGS) $(LDFLAGS) -o libsetuid.so org_cacert_gigi_natives_SetUID.c
+org_cacert_gigi_natives_SetUID.h: ../src/org/cacert/gigi/natives/SetUID.java
+       $(JAVAH) -classpath ../bin/ -jni org.cacert.gigi.natives.SetUID
+
+libsetuid.so: org_cacert_gigi_natives_SetUID.c org_cacert_gigi_natives_SetUID.h
+       $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $<
 
 clean:
-       rm -f *.so
-       rm -f *.h
+       -$(RM) *.so *.h