58 lines
1.6 KiB
Makefile
58 lines
1.6 KiB
Makefile
TARGETS = $(OBJDIR)libtest.a $(OBJDIR)libtest.so.0.0 $(OBJDIR)libtest.so.0 $(OBJDIR)libtest.so
|
|
OBJDIR =
|
|
PREFIX = /usr/local
|
|
DESTDIR =
|
|
LIBDIR = $(PREFIX)/lib
|
|
LDFLAGS = -ldl -ltest
|
|
AR = ar
|
|
RANLIB = ranlib
|
|
CCSHARED= $(CC) -shared
|
|
RM = rm -f
|
|
LN = ln -f
|
|
MKDIR = mkdir -m 0755 -p
|
|
INSTALL = install
|
|
|
|
|
|
all: $(TARGETS)
|
|
|
|
libtest_OBJS = $(OBJDIR)test.o
|
|
libtest_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
|
libtest_LDFLAGS = $(LDFLAGSF) $(LDFLAGS)
|
|
|
|
$(OBJDIR)libtest.a: $(libtest_OBJS)
|
|
$(AR) -rc $(OBJDIR)libtest.a $(libtest_OBJS)
|
|
$(RANLIB) $(OBJDIR)libtest.a
|
|
|
|
$(OBJDIR)libtest.so.0.0: $(libtest_OBJS)
|
|
$(CCSHARED) -o $(OBJDIR)libtest.so.0.0 -Wl,-soname,libtest.so.0 $(libtest_OBJS) $(libtest_LDFLAGS)
|
|
|
|
$(OBJDIR)libtest.so.0: $(OBJDIR)libtest.so.0.0
|
|
$(LN) -s -- libtest.so.0.0 $(OBJDIR)libtest.so.0
|
|
|
|
$(OBJDIR)libtest.so: $(OBJDIR)libtest.so.0.0
|
|
$(LN) -s -- libtest.so.0.0 $(OBJDIR)libtest.so
|
|
|
|
$(OBJDIR)test.o: test.c
|
|
$(CC) $(libtest_CFLAGS) -o $(OBJDIR)test.o -c test.c
|
|
|
|
clean:
|
|
$(RM) -- $(libtest_OBJS)
|
|
|
|
distclean: clean
|
|
$(RM) -- $(TARGETS)
|
|
|
|
install: $(TARGETS)
|
|
$(MKDIR) $(DESTDIR)$(LIBDIR)
|
|
$(INSTALL) -m 0644 $(OBJDIR)libtest.a $(DESTDIR)$(LIBDIR)/libtest.a
|
|
$(INSTALL) -m 0755 $(OBJDIR)libtest.so.0.0 $(DESTDIR)$(LIBDIR)/libtest.so.0.0
|
|
$(LN) -s -- libtest.so.0.0 $(DESTDIR)$(LIBDIR)/libtest.so.0
|
|
$(LN) -s -- libtest.so.0.0 $(DESTDIR)$(LIBDIR)/libtest.so
|
|
|
|
uninstall:
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest.a
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest.so.0.0
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest.so.0
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest.so
|
|
|
|
.PHONY: all clean distclean install uninstall
|