summaryrefslogtreecommitdiff
path: root/io/lib/Makefile
blob: 4b79e01d4d5bdcd7f4c981ef8138cb4d51e07558 (plain)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
CC := $(CROSS_COMPILE)gcc
CXX := $(CROSS_COMPILE)g++
LD := $(CROSS_COMPILE)g++

DISTRIO_BASE = ../../

DISTRIO_COMMON := $(DISTRIO_BASE)common

CFLAGS += -fPIC -I$(DISTRIO_COMMON)
CXXFLAGS += $(CFLAGS)

TAO_IDL := tao_idl

DESTDIR := /usr

COMPONENT = distrio_io
LIB = lib$(COMPONENT).so
OBJ = $(COMPONENT)C.o $(COMPONENT).o $(COMPONENT)S.o

IDL_CLEANFILES = $(COMPONENT)C.cpp $(COMPONENT)C.inl $(COMPONENT)I.h \
	$(COMPONENT)S.h $(COMPONENT)C.h $(COMPONENT)S.cpp

all: $(OBJ)
	$(LD) -shared -o $(LIB) $(OBJ)

.PHONY: idl
idl:
	$(TAO_IDL) -GI -I$(DISTRIO_BASE)interfaces \
		$(DISTRIO_BASE)interfaces/$(COMPONENT).idl
	rm -f $(COMPONENT)I.cpp

.PHONY: idl_clean
idl_clean:
	rm -f $(IDL_CLEANFILES)

.PHONY: clean
clean: idl_clean
	rm -f *.o
	rm -f $(LIB)

install: all
	cp -a $(LIB) $(DESTDIR)/lib

uninstall:
	rm -f $(DESTDIR)/lib/$(LIB)