Makefile 513 B

123456789101112131415161718192021222324
  1. LIB=cxxrt
  2. MAJ=1
  3. OBJS=dynamic_cast.o exception.o guard.o stdexcept.o typeinfo.o memory.o auxhelper.o libelftc_dem_gnu3.o
  4. SOBJS=${OBJS:.o=.So}
  5. static: lib$(LIB).a
  6. shared: lib$(LIB).so
  7. %.So: %.cc
  8. $(CXX) -fPIC $(CXXFLAGS) $(CPPFLAGS) -c -o $@ $<
  9. %.So: %.c
  10. $(CC) -fPIC $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
  11. lib$(LIB).a: $(OBJS)
  12. $(AR) cr $@ $^
  13. lib$(LIB).so.$(MAJ): $(SOBJS)
  14. $(CXX) -fPIC -nodefaultlibs $(CXXFLAGS) $(LDFLAGS) -shared -Wl,-soname,$@ -o $@ $^ $(LIBS)
  15. lib$(LIB).so: lib$(LIB).so.$(MAJ)
  16. ln -s $< $@