X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lib%2FMakefile.elf-lib;h=f850f3ddb79532e2560f43ce9fa810d235949223;hb=a61bc9e009b4b829f61f1717753b4ee0882d9aba;hp=93f1ace4fa7d470ff62b36a271882c356d577a36;hpb=74becf3c0a065f8d64e07ce4d31f9fe53be91d62;p=tools%2Fe2fsprogs.git diff --git a/lib/Makefile.elf-lib b/lib/Makefile.elf-lib index 93f1ace..f850f3d 100644 --- a/lib/Makefile.elf-lib +++ b/lib/Makefile.elf-lib @@ -9,14 +9,13 @@ # ELF_IMAGE = libce # ELF_MYDIR = et # ELF_INSTALL_DIR = $(SHLIBDIR) -# - -all:: elfshared image +# ELF_OTHER_LIBS = -lc -subdirs:: elfshared +all:: image -elfshared: - mkdir elfshared +real-subdirs:: Makefile + $(E) " MKDIR elfshared" + $(Q) mkdir -p elfshared ELF_LIB = $(ELF_IMAGE).so.$(ELF_VERSION) ELF_SONAME = $(ELF_IMAGE).so.$(ELF_SO_VERSION) @@ -24,25 +23,53 @@ ELF_SONAME = $(ELF_IMAGE).so.$(ELF_SO_VERSION) image: $(ELF_LIB) $(ELF_LIB): $(OBJS) - (cd elfshared; $(CC) --shared -o $(ELF_LIB) -Wl,-soname,$(ELF_SONAME) $(OBJS)) - $(MV) elfshared/$(ELF_LIB) . - $(RM) -f ../$(ELF_LIB) ../$(ELF_IMAGE).so ../$(ELF_SONAME) - $(LN) $(ELF_LIB) ../$(ELF_LIB) - $(LN) ../$(ELF_LIB) ../$(ELF_IMAGE).so - $(LN) ../$(ELF_LIB) ../$(ELF_SONAME) + $(E) " GEN_ELF_SOLIB $(ELF_LIB)" + $(Q) (cd elfshared; $(CC) -o $(ELF_LIB) \ + -L$(top_builddir)/../lib $(LDFLAGS_SHLIB) -fPIC -shared \ + -Wl,-soname,$(ELF_SONAME) $(OBJS) $(ELF_OTHER_LIBS)) + $(Q) $(MV) elfshared/$(ELF_LIB) . + $(Q) $(RM) -f ../$(ELF_LIB) ../$(ELF_IMAGE).so ../$(ELF_SONAME) + $(Q) (cd ..; $(LN) $(LINK_BUILD_FLAGS) \ + `echo $(my_dir) | sed -e 's;lib/;;'`/$(ELF_LIB) $(ELF_LIB)) + $(Q) (cd ..; $(LN) $(LINK_BUILD_FLAGS) $(ELF_LIB) $(ELF_IMAGE).so) + $(Q) (cd ..; $(LN) $(LINK_BUILD_FLAGS) $(ELF_LIB) $(ELF_SONAME)) + +installdirs-elf-lib:: + $(E) " MKDIR_P $(ELF_INSTALL_DIR) $(libdir)" + $(Q) $(MKDIR_P) $(DESTDIR)$(ELF_INSTALL_DIR) \ + $(DESTDIR)$(libdir) -installdirs:: - $(top_srcdir)/mkinstalldirs $(DESTDIR)$(ELF_INSTALL_DIR) +installdirs:: installdirs-elf-lib -install-shlibs install:: $(ELF_LIB) installdirs - $(INSTALL_PROGRAM) $(ELF_LIB) $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_LIB) - $(STRIP) --strip-debug \ - $(DESTDIR)$(DLL_INSTALL_DIR)/$(ELF_LIB) - $(LN) -sf $(ELF_LIB) $(DESTDIR)$(DLL_INSTALL_DIR)/$(ELF_SONAME) - $(LN) -sf $(ELF_SONAME) $(DESTDIR)$(DLL_INSTALL_DIR)/$(ELF_IMAGE).so - -ldconfig +install-shlibs install:: $(ELF_LIB) installdirs-elf-lib $(DEP_INSTALL_SYMLINK) + $(E) " INSTALL-ELF-LIB $(ELF_INSTALL_DIR)/$(ELF_LIB)" + $(Q) $(INSTALL_PROGRAM) $(ELF_LIB) $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_LIB) + $(E) " SYMLINK $(ELF_INSTALL_DIR)/$(ELF_SONAME)" + $(Q) $(INSTALL_SYMLINK) $(ELF_INSTALL_DIR)/$(ELF_LIB) \ + $(ELF_INSTALL_DIR)/$(ELF_SONAME) $(DESTDIR) + $(E) " SYMLINK $(libdir)/$(ELF_IMAGE).so" + $(Q) $(INSTALL_SYMLINK) $(ELF_INSTALL_DIR)/$(ELF_SONAME) \ + $(libdir)/$(ELF_IMAGE).so $(DESTDIR) + $(E) " LDCONFIG" + $(Q) -$(LDCONFIG) + +install-strip: install + $(E) " STRIP-LIB $(ELF_INSTALL_DIR)/$(ELF_LIB)" + $(Q) $(STRIP) --strip-unneeded --remove-section=.comment \ + --remove-section=.note $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_LIB) + +install-shlibs-strip:: install-shlibs + $(E) " STRIP-LIB $(ELF_INSTALL_DIR)/$(ELF_LIB)" + $(Q) $(STRIP) --strip-unneeded --remove-section=.comment \ + --remove-section=.note $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_LIB) + +uninstall-shlibs uninstall:: + $(RM) -f $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_LIB) \ + $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_SONAME) \ + $(DESTDIR)$(libdir)/$(ELF_IMAGE).so + -$(LDCONFIG) clean:: $(RM) -rf elfshared $(RM) -f $(ELF_LIB) - $(RM) -f ../$(ELF_LIB) ../$(ELF_IMAGE).so + $(RM) -f ../$(ELF_LIB) ../$(ELF_IMAGE).so ../$(ELF_SONAME)