diff --git a/make/defs-orig.mk b/make/defs-orig.mk index 1b5df1b8..951219d2 100644 --- a/make/defs-orig.mk +++ b/make/defs-orig.mk @@ -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 + diff --git a/make/rules.mk b/make/rules.mk index d1fce6e3..98f1f136 100644 --- a/make/rules.mk +++ b/make/rules.mk @@ -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" ;\