defs-orig.mk, rules.mk: Add support for shared libs

This commit is contained in:
Jan Lindemann 2002-05-23 15:56:17 +00:00 committed by Jan Lindemann
commit 29beda6305
2 changed files with 9 additions and 1 deletions

View file

@ -88,6 +88,7 @@ INSTALL_LIBDIR = $(PREFIX)/lib
LIB_SO = $(LIBDIR)/lib$(LIBNAME).so
LIB_A = $(LIBDIR)/lib$(LIBNAME).a
INSTALLED_LIB_SO = $(INSTALL_LIBDIR)/lib$(LIBNAME).so
MEMBERS = $(LIB_A)($(OBJ))
#PREFIX = ../# CAUTION: This breaks the installation in the project
#MEMWATCH = -DMEMWATCH -DMW_STDIO
@ -160,3 +161,7 @@ endef
define make_subdirs_target
set -e; for D in $(SUBDIRS) ; do make -C $$D $@; done
endef
LD_LIBRARY_PATH = $(LIBDIR)
export LD_LIBRARY_PATH

View file

@ -35,7 +35,7 @@ endif
$(CC) $< $(LDFLAGS) -o $@
$(LIB_SO): $(LIB_A)
$(CC) $< $(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
$(CC) -shared -Wl,--whole-archive $< -Wl,--no-whole-archive $(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
$(TOPDIR)/include:
mkdir -p $@
@ -72,6 +72,9 @@ $(INSTALL_LIBDIR)/%.so: %.so
$(PREFIX)/bin/$(EXE): $(EXE)
$(INSTALL) $(EXE) $(PREFIX)/bin/
$(INSTALLED_LIB_SO): $(LIB_SO)
install -o $(EXEOWNER) -g $(EXEGROUP) -m $(EXEMODE) $< $@
checkroot:
@if [ "$(CHECK_ROOT)" = true -o "$(CHECK_ROOT)" = TRUE ] ; then \
echo "Error: You can only do this if either" ;\