forked from s-u/SessionKeyServer
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
33 lines (24 loc) · 1.26 KB
/
Makefile
File metadata and controls
33 lines (24 loc) · 1.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
JARS=$(shell ls jars/*.jar)
JCP=$(shell ls jars/*.jar | tr '\n' :)
## Sorry, the following is hard-coded for the PAM module; if it breaks, the session server will work, just not use PAM
JAVA_HOME:=$(shell ./jhome)
OSARCH:=$(shell ./jhome os.arch)
OSNAME:=$(shell uname | tr '[:upper:]' '[:lower:]')
JCPPFLAGS=-I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/$(OSNAME) -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/$(OSNAME)
JLIBS=-L$(JAVA_HOME)/jre/lib/$(OSARCH)/server -L$(JAVA_HOME)/lib/$(OSARCH)/server -L$(JAVA_HOME)/jre/lib/server -L$(JAVA_HOME)/lib/server -ljvm
CFLAGS=-g -fPIC -O2
SessionKeyServer.jar: build/com/att/research/RCloud/SessionKeyServer.class
(cd build && for jar in $(JARS); do jar fx ../$$jar; done)
rm -rf build/META-INF
(cd build && jar fc ../$@ *)
build/com/att/research/RCloud/SessionKeyServer.class: SessionKeyServer.java KerberosAuth.java PAM.java
@-rm -rf build; mkdir build
javac $(JFLAGS) -d build -cp $(JCP) SessionKeyServer.java KerberosAuth.java PAM.java
libPAM.so: pam.c
$(CC) $(CPPFLAGS) $(CFLAGS) $(JCPPFLAGS) -shared -o $@ pam.c -lpam $(LIBS) $(JLIBS)
pam: libPAM.so
run: SessionKeyServer.jar
java -cp SessionKeyServer.jar com.att.research.RCloud.SessionKeyServer
clean:
rm -rf build *~ libPAM.so SessionKeyServer.jar
.PHONY: pam