File: Makefile

package info (click to toggle)
evms 1.0.0-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 9,168 kB
  • ctags: 5,853
  • sloc: ansic: 87,317; makefile: 691; sh: 238
file content (55 lines) | stat: -rw-r--r-- 1,190 bytes parent folder | download
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
46
47
48
49
50
51
52
53
54
55
#
# Enterprise Volume Manager System - User Interface Engine
#
# target -> libevms.so ... the engine api framework
#

include ../make.rules

NAME	= evms

MAJOR_VERSION   = 1
MINOR_VERSION   = 0
PATCH_LEVEL     = 0
EXTRAVERSION    =

TARGET	= lib$(NAME)-$(VERSION).so
SONAME	= lib$(NAME).so.$(MAJOR_VERSION)
ARNAME	= lib$(NAME).a
LIBNAME	= lib$(NAME).so
SRCS	:= $(shell ls *.c)
OBJS	:= $(shell ls *.c | sed s/\\.c/\\.o/)

all: .depend $(TARGET)

install: all
	../mkinstalldirs.sh $(DESTDIR)$(EVMSLIB_DIR)
	$(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(EVMSLIB_DIR)
	$(INSTALL) -m 644 $(ARNAME) $(DESTDIR)$(EVMSLIB_DIR)
	rm -f $(DESTDIR)$(EVMSLIB_DIR)/$(LIBNAME)
	ln -s $(TARGET) $(DESTDIR)$(EVMSLIB_DIR)/$(LIBNAME)

uninstall:
	rm -f $(DESTDIR)$(EVMSLIB_DIR)/$(LIBNAME)
	rm -f $(DESTDIR)$(EVMSLIB_DIR)/$(ARNAME)
	rm -f $(DESTDIR)$(EVMSLIB_DIR)/$(TARGET)

$(TARGET): $(OBJS)
	$(CC) $(SO_CFLAGS) -Wl,-soname,$(SONAME) -o $(TARGET) $(OBJS)
	ar rcs $(ARNAME) $(OBJS)
	ln -sf $(TARGET) $(LIBNAME)

clean:
	rm -f .depend *.o *.so *.a $(TARGET)

distclean: clean

.depend:
	$(CPP) -M $(EVMSCFLAGS) *.c > .depend

dep: .depend

# grab our dep file
ifeq (.depend,$(wildcard .depend))
include .depend
endif