aboutsummaryrefslogtreecommitdiff
path: root/flow/src/main/native/posix/Makefile
blob: 22338e5db7b0cb7e1901624c400499a3bccf6a73 (plain) (blame)
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
# Build native binaries for flow.
# This makefile is intended for linux-based operating systems.

TARGET?=libflow.so
MAJOR_VERSION=2

CC=$(CROSS_COMPILE)gcc
CFLAGS= -O2 -fPIC -Wall
LD=$(CROSS_COMPILE)ld
LDFLAGS=-shared -Wl,-soname,$(TARGET).$(MAJOR_VERSION)
INCLUDES?=../include/ /usr/lib/jvm/java-7-oracle/include/ /usr/lib/jvm/java-7-oracle/include/linux/

OBJECTS=flow.o flow_jni.o

all: $(TARGET)

$(TARGET): $(OBJECTS)
	$(CC) $(LDFLAGS) -o $@ $^

%.o: %.c
	$(CC) $(CFLAGS) $(addprefix -I, $(INCLUDES)) -o $@ -c $<
	
clean:
	rm -f *.o
	rm -f *.so

.PHONY: clean