Add rules for building the correct exportted list file for Sun, AIX, and Linux.

Fix AIX so the Map files will override exporting all the symbols


git-svn-id: svn://10.0.0.236/trunk@84461 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
relyea%netscape.com
2001-01-06 02:00:55 +00:00
parent 711d0a77e5
commit b2786a1f98
3 changed files with 16 additions and 3 deletions

View File

@@ -37,8 +37,9 @@
include $(CORE_DEPTH)/coreconf/AIX.mk
OS_CFLAGS += -DAIX4_2
DSO_LDOPTS = -brtl -bM:SRE -bnoentry -bexpall
DSO_LDOPTS = -brtl -bM:SRE -bnoentry $(EXPORT_RULES)
MKSHLIB = $(LD) $(DSO_LDOPTS) -lsvld -L/usr/lpp/xlC/lib -lc -lm
OS_LIBS += -L/usr/lpp/xlC/lib -lc -lm
EXPORT_RULES = -bexpall

View File

@@ -44,8 +44,9 @@ ifeq ($(USE_64), 1)
export OBJECT_MODE
endif
OS_CFLAGS += -DAIX4_3
DSO_LDOPTS = -brtl -bM:SRE -bnoentry -bexpall
DSO_LDOPTS = -brtl -bM:SRE -bnoentry $(EXPORT_RULES)
MKSHLIB = $(LD) $(DSO_LDOPTS) -lsvld -L/usr/lpp/xlC/lib -lc -lm
OS_LIBS += -L/usr/lpp/xlC/lib -lc -lm
EXPORT_RULES = -bexpall

View File

@@ -321,7 +321,7 @@ ifdef SHARED_LIBRARY_LIBS
SUB_SHLOBJS = $(foreach dir,$(SHARED_LIBRARY_DIRS),$(addprefix $(dir)/,$(shell $(MAKE) -C $(dir) --no-print-directory get_objs)))
endif
$(SHARED_LIBRARY): $(OBJS)
$(SHARED_LIBRARY): $(OBJS) $(MAPFILE)
@$(MAKE_OBJDIR)
rm -f $@
ifeq ($(OS_ARCH)$(OS_RELEASE), AIX4.1)
@@ -366,6 +366,17 @@ $(RES): $(RESNAME)
@echo $(RES) finished
endif
$(MAPFILE): $(LIBRARY_NAME).def
ifeq ($(OS_ARCH),SunOS)
grep -v 'UNIX_REMOVE' $(LIBRARY_NAME).def | sed -e 's,;+,,' | sed -e 's,;;,,' > $@
endif
ifeq ($(OS_ARCH),Linux)
grep -v 'UNIX_REMOVE' $(LIBRARY_NAME).def | sed -e 's,;+,,' > $@
endif
ifeq ($(OS_ARCH),AIX)
grep -v ';+' $(LIBRARY_NAME).def| sed -e 's,;,,g' > $@
endif
$(OBJDIR)/$(PROG_PREFIX)%$(PROG_SUFFIX): $(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX)
@$(MAKE_OBJDIR)
ifeq ($(OS_ARCH),WINNT)