2006-10-24 15:10:25 +00:00
|
|
|
OUT = aseawk
|
|
|
|
|
2006-10-24 15:31:35 +00:00
|
|
|
C_SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
|
2006-10-03 14:38:26 +00:00
|
|
|
run.c rec.c val.c func.c misc.c extio.c rex.c
|
2006-10-24 15:10:25 +00:00
|
|
|
JNI_SRCS = $(C_SRCS) jni.c
|
|
|
|
JAVA_SRCS = Awk.java Exception.java Extio.java
|
|
|
|
|
|
|
|
C_OBJS = $(C_SRCS:.c=.obj)
|
|
|
|
JNI_OBJS = $(JNI_SRCS:.c=.obj)
|
|
|
|
JAVA_OBJS = $(JAVA_SRCS:.java=.class)
|
2005-09-30 09:40:15 +00:00
|
|
|
|
2006-10-24 15:10:25 +00:00
|
|
|
JNI_INC = \
|
|
|
|
/I"C:\Program Files\Java\jdk1.5.0_09\include" \
|
|
|
|
/I"C:\Program Files\Java\jdk1.5.0_09\include\win32"
|
2006-08-03 09:54:16 +00:00
|
|
|
|
2005-09-30 09:40:15 +00:00
|
|
|
CC = cl
|
2006-10-12 14:36:25 +00:00
|
|
|
LD = link
|
2006-10-24 15:10:25 +00:00
|
|
|
JAVAC = javac
|
2005-09-30 09:40:15 +00:00
|
|
|
|
2006-11-14 09:30:46 +00:00
|
|
|
CFLAGS = /nologo /O2 /MT /W3 /GR- /Za -I../.. $(JNI_INC)
|
2006-10-24 15:10:25 +00:00
|
|
|
JAVACFLAGS = -classpath ../..
|
|
|
|
|
|
|
|
all: lib jni
|
2006-03-31 16:56:01 +00:00
|
|
|
|
2006-10-26 14:22:01 +00:00
|
|
|
lib: $(C_OBJS)
|
2006-10-12 14:36:25 +00:00
|
|
|
$(LD) /lib @<<
|
2006-10-26 14:22:01 +00:00
|
|
|
/nologo /out:$(OUT).lib $(C_OBJS)
|
2005-09-30 09:40:15 +00:00
|
|
|
<<
|
|
|
|
|
2006-10-24 15:10:25 +00:00
|
|
|
jni: $(JNI_OBJS) $(JAVA_OBJS)
|
2006-11-14 09:30:46 +00:00
|
|
|
$(LD) /dll /def:jni.def /subsystem:windows /version:0.1 /release @<<
|
2006-10-24 15:10:25 +00:00
|
|
|
/nologo /out:$(OUT).dll $(JNI_OBJS)
|
2006-08-02 15:03:49 +00:00
|
|
|
<<
|
|
|
|
|
2005-09-30 09:40:15 +00:00
|
|
|
clean:
|
2006-11-14 10:24:20 +00:00
|
|
|
del $(OBJS) $(OUT).lib $(OUT).dll *.obj *.class
|
2005-09-30 09:40:15 +00:00
|
|
|
|
2006-10-24 15:10:25 +00:00
|
|
|
.SUFFIXES: .c .obj .java .class
|
2005-09-30 09:40:15 +00:00
|
|
|
.c.obj:
|
|
|
|
$(CC) $(CFLAGS) /c $<
|
|
|
|
|
2006-10-24 15:10:25 +00:00
|
|
|
.java.class:
|
|
|
|
$(JAVAC) $(JAVACFLAGS) $<
|