include $(TOPDIR)/src/lib/MakeVars
include $(TOPDIR)/src/lib/MakeSuffixRules
VPATH = $(SRCDIR)
NAME = libr12
TARGET = $(NAME).$(LIBSUF)
TARGET_HEADERS = libr12.h
# _vrr_build.c need to find libr12.h
CFLAGS += -I.
#
# List all generated routines. Do it in a safe way in case the list is too long
#
TRUESRC1 = $(shell echo `ls vrr_grt_order_*.cc`)
TRUESRC2 = $(shell echo `ls hrr_grt_order_*.cc`)
TRUESRC3 = $(shell echo `ls r_build_*.cc`)
TRUESRC4 = $(shell echo `ls t1_build_*.cc`)
TRUESRC5 = $(shell echo `ls t2_build_*.cc`)
TRUESRC6 = $(shell echo `ls t1hrr1_build_*.cc`)
TRUESRC7 = $(shell echo `ls t2hrr3_build_*.cc`)
TRUESRC8 = init_libr12.c r_vrr_build.c t1_vrr_build.c t2_vrr_build.c
LIBOBJ1 = $(TRUESRC1:%.cc=%.$(OBJSUF))
LIBOBJ2 = $(TRUESRC2:%.cc=%.$(OBJSUF))
LIBOBJ3 = $(TRUESRC3:%.cc=%.$(OBJSUF))
LIBOBJ4 = $(TRUESRC4:%.cc=%.$(OBJSUF))
LIBOBJ5 = $(TRUESRC5:%.cc=%.$(OBJSUF))
LIBOBJ6 = $(TRUESRC6:%.cc=%.$(OBJSUF))
LIBOBJ7 = $(TRUESRC7:%.cc=%.$(OBJSUF))
LIBOBJ8 = $(TRUESRC8:%.c=%.$(OBJSUF))
LIBOBJ = $(LIBOBJ1) $(LIBOBJ2) $(LIBOBJ3) $(LIBOBJ4) $(LIBOBJ5) $(LIBOBJ6) $(LIBOBJ7) $(LIBOBJ8)
default:: $(TOPDIR)/lib/$(TARGET) $(TOPDIR)/include/$(NAME)/$(NAME).h
# this is how static library is made
$(TOPDIR)/lib/$(NAME).a: $(LIBOBJ)
/bin/rm -f $@
$(AR) $(ARFLAGS) $@ $(LIBOBJ1)
$(AR) $(ARFLAGS) $@ $(LIBOBJ2)
$(AR) $(ARFLAGS) $@ $(LIBOBJ3)
$(AR) $(ARFLAGS) $@ $(LIBOBJ4)
$(AR) $(ARFLAGS) $@ $(LIBOBJ5)
$(AR) $(ARFLAGS) $@ $(LIBOBJ6)
$(AR) $(ARFLAGS) $@ $(LIBOBJ7)
$(AR) $(ARFLAGS) $@ $(LIBOBJ8)
$(RANLIB) $@
# this is how shared library is made
$(TOPDIR)/lib/$(NAME).la: $(LIBOBJ)
$(LTLINK) $(CXX) -o $@ $^ $(LTLINKLIBOPTS)
$(TOPDIR)/include/$(NAME)/$(NAME).h: $(NAME).h
$(INSTALL) $(INSTALLDIROPT) $(TOPDIR)/include/$(NAME)
-$(INSTALL) $(INSTALLLIBOPT) $(TARGET_HEADERS) $(TOPDIR)/include/$(NAME)
install:: install_inc install_target
install_inc::
$(INSTALL) $(INSTALLDIROPT) $(includedir)
-$(INSTALL) $(INSTALLLIBOPT) $(TARGET_HEADERS) $(includedir)
install_target:: $(TOPDIR)/lib/$(TARGET)
$(INSTALL) $(INSTALLDIROPT) $(libdir)
$(INSTALL) $(INSTALLLIBOPT) $< $(libdir)
clean:: oclean targetclean
distclean:: clean
oclean::
-rm -rf *.$(OBJSUF)
targetclean::
-rm -f $(TOPDIR)/lib/$(TARGET)
syntax highlighted by Code2HTML, v. 0.9.1