90 lines
3.4 KiB
Makefile
90 lines
3.4 KiB
Makefile
TARGETS = $(OBJDIR)libtest.a $(OBJDIR)libtest$(SOEXT).0.0 $(OBJDIR)libtest$(SOEXT).0 $(OBJDIR)libtest$(SOEXT) $(OBJDIR)libs\ p\ a\ c\ e.a $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0.0 $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0 $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT)
|
|
OBJDIR =
|
|
PREFIX = /usr/local
|
|
DESTDIR =
|
|
LIBDIR = $(PREFIX)/lib
|
|
LDFLAGS = -ldl -ltest
|
|
EXEEXT =
|
|
AR = ar
|
|
ARFLAGS = -rc
|
|
RANLIB = ranlib
|
|
CCSHARED= $(CC) -shared
|
|
SOEXT = .so
|
|
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) a.c b.c
|
|
$(AR) $(ARFLAGS) $(OBJDIR)libtest.a $(libtest_OBJS)
|
|
$(RANLIB) $(OBJDIR)libtest.a
|
|
|
|
$(OBJDIR)libtest$(SOEXT).0.0: $(libtest_OBJS) a.c b.c
|
|
$(CCSHARED) -o $(OBJDIR)libtest$(SOEXT).0.0 -Wl,-soname,libtest$(SOEXT).0 $(libtest_OBJS) $(libtest_LDFLAGS)
|
|
|
|
$(OBJDIR)libtest$(SOEXT).0: $(OBJDIR)libtest$(SOEXT).0.0
|
|
$(LN) -s -- libtest$(SOEXT).0.0 $(OBJDIR)libtest$(SOEXT).0
|
|
|
|
$(OBJDIR)libtest$(SOEXT): $(OBJDIR)libtest$(SOEXT).0.0
|
|
$(LN) -s -- libtest$(SOEXT).0.0 $(OBJDIR)libtest$(SOEXT)
|
|
|
|
libs_p_a_c_e_OBJS = $(OBJDIR)s\ p\ a\ c\ e.o
|
|
libs_p_a_c_e_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
|
libs_p_a_c_e_LDFLAGS = $(LDFLAGSF) $(LDFLAGS)
|
|
|
|
$(OBJDIR)libs\ p\ a\ c\ e.a: $(libs_p_a_c_e_OBJS) s\ p\ a\ c\ e.c
|
|
$(AR) $(ARFLAGS) $(OBJDIR)libs\ p\ a\ c\ e.a $(libs_p_a_c_e_OBJS)
|
|
$(RANLIB) $(OBJDIR)libs\ p\ a\ c\ e.a
|
|
|
|
$(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0.0: $(libs_p_a_c_e_OBJS) s\ p\ a\ c\ e.c
|
|
$(CCSHARED) -o $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0.0 -Wl,-soname,libs\ p\ a\ c\ e$(SOEXT).0 $(libs_p_a_c_e_OBJS) $(libs_p_a_c_e_LDFLAGS)
|
|
|
|
$(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0: $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0.0
|
|
$(LN) -s -- libs\ p\ a\ c\ e$(SOEXT).0.0 $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0
|
|
|
|
$(OBJDIR)libs\ p\ a\ c\ e$(SOEXT): $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0.0
|
|
$(LN) -s -- libs\ p\ a\ c\ e$(SOEXT).0.0 $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT)
|
|
|
|
$(OBJDIR)test.o: test.c
|
|
$(CC) $(libtest_CFLAGS) -o $(OBJDIR)test.o -c test.c
|
|
|
|
$(OBJDIR)s\ p\ a\ c\ e.o: s\ p\ a\ c\ e.c
|
|
$(CC) $(libs_p_a_c_e_CFLAGS) -o $(OBJDIR)s\ p\ a\ c\ e.o -c s\ p\ a\ c\ e.c
|
|
|
|
clean:
|
|
$(RM) -- $(libtest_OBJS) $(libs_p_a_c_e_OBJS)
|
|
|
|
distclean: clean
|
|
$(RM) -- $(TARGETS)
|
|
|
|
install: all
|
|
$(MKDIR) $(DESTDIR)$(LIBDIR)
|
|
$(INSTALL) -m 0644 $(OBJDIR)libtest.a $(DESTDIR)$(LIBDIR)/libtest.a
|
|
$(INSTALL) -m 0755 $(OBJDIR)libtest$(SOEXT).0.0 $(DESTDIR)$(LIBDIR)/libtest$(SOEXT).0.0
|
|
$(LN) -s -- libtest$(SOEXT).0.0 $(DESTDIR)$(LIBDIR)/libtest$(SOEXT).0
|
|
$(LN) -s -- libtest$(SOEXT).0.0 $(DESTDIR)$(LIBDIR)/libtest$(SOEXT)
|
|
$(MKDIR) $(DESTDIR)$(LIBDIR)
|
|
$(INSTALL) -m 0644 $(OBJDIR)libs\ p\ a\ c\ e.a $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e.a
|
|
$(INSTALL) -m 0755 $(OBJDIR)libs\ p\ a\ c\ e$(SOEXT).0.0 $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e$(SOEXT).0.0
|
|
$(LN) -s -- libs\ p\ a\ c\ e$(SOEXT).0.0 $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e$(SOEXT).0
|
|
$(LN) -s -- libs\ p\ a\ c\ e$(SOEXT).0.0 $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e$(SOEXT)
|
|
|
|
uninstall:
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest.a
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest$(SOEXT).0.0
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest$(SOEXT).0
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libtest$(SOEXT)
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e.a
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e$(SOEXT).0.0
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e$(SOEXT).0
|
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libs\ p\ a\ c\ e$(SOEXT)
|
|
|
|
.PHONY: all clean distclean install uninstall
|