From 8b9893a01b48accaf514b5d6beb48a76401368a1 Mon Sep 17 00:00:00 2001 From: Richard Kistruck Date: Fri, 25 Sep 2009 15:08:55 +0100 Subject: [PATCH] Mps br/padding: job002148: drop mps_lib_callback_register from w3gen.def, and put it in new file mpslibcb.def, used only when building the mps dll (rule in commpost.nmk) which contains the mpslibcb stuff. correct expgen.sh accordingly (even though it's not working). so mps-fns.def (produced by w3build.bat by copying w3gen.def) is now correct for configura to use to re-export mps functions static linked into a larger executable, and mpsdy.dll still correctly exports the mps_lib_callback_register function. Copied from Perforce Change: 168763 ServerID: perforce.ravenbrook.com --- mps/code/commpost.nmk | 6 ++++-- mps/code/expgen.sh | 4 ++-- mps/code/mpslibcb.def | 10 ++++++++++ mps/code/w3gen.def | 2 -- 4 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 mps/code/mpslibcb.def diff --git a/mps/code/commpost.nmk b/mps/code/commpost.nmk index 1fe2aa9a444..8898f9435b6 100644 --- a/mps/code/commpost.nmk +++ b/mps/code/commpost.nmk @@ -272,9 +272,11 @@ $(PFM)\$(VARIETY)\mps.lib: $(MPMOBJ) $(AMCOBJ) $(LOOBJ) $(SNCOBJ) \ # about the repetition of the object list. $(PFM)\$(VARIETY)\mpsdy.dll: $(PFM)\$(VARIETY)\mpslibcb.obj \ $(MPMOBJ) $(AMCOBJ) $(LOOBJ) $(SNCOBJ) \ - $(MVFFOBJ) $(AMSOBJ) $(AWLOBJ) w3gen.def + $(MVFFOBJ) $(AMSOBJ) $(AWLOBJ) w3gen.def \ + mpslibcb.def $(ECHO) $@ - $(LINKER) $(LINKFLAGS) /def:w3gen.def /dll /OUT:$@ \ + $(LINKER) $(LINKFLAGS) /def:w3gen.def \ + /def:mpslibcb.def /dll /OUT:$@ \ $(PFM)\$(VARIETY)\mpslibcb.obj \ $(MPMOBJ) $(AMCOBJ) $(LOOBJ) $(SNCOBJ) \ $(MVFFOBJ) $(AMSOBJ) $(AWLOBJ) diff --git a/mps/code/expgen.sh b/mps/code/expgen.sh index bb63b328382..78fd5a29c0d 100755 --- a/mps/code/expgen.sh +++ b/mps/code/expgen.sh @@ -117,7 +117,8 @@ tu () { # followed by manual removal of mpsw3.h mpswin.h (which gcc on UNIX # cannot parse). Also removed are mpsio.h mpslib.h as they defined # interfaces that mps _uses_ not defines. Also removed is mpscmvff.h as -# it does not get included in mps.lib +# it does not get included in mps.lib. Also removed is mpslibcb.h, +# which now has its own mpslibcb.def file (job002148). # The functions declared in mpsw3.h have to be added to the .def file by # hand later in this script. f='mps.h @@ -129,7 +130,6 @@ mpscawl.h mpsclo.h mpscmv.h mpscsnc.h -mpslibcb.h mpstd.h' tu $f diff --git a/mps/code/mpslibcb.def b/mps/code/mpslibcb.def new file mode 100644 index 00000000000..9b2f4e3b285 --- /dev/null +++ b/mps/code/mpslibcb.def @@ -0,0 +1,10 @@ +; $Header$ +; --- EXTERNAL MPS FUNCTIONS --- +; This file tells the linker to export the mpslibcb functions from +; the MPS DLL. +; This list is for the w3i3mv platform. +; +; This file was extracted by hand from expgen.sh; see MPS job002148. +EXPORTS +; mpslibcb.h +mps_lib_callback_register diff --git a/mps/code/w3gen.def b/mps/code/w3gen.def index 986cb7c767e..660b2ba94f5 100644 --- a/mps/code/w3gen.def +++ b/mps/code/w3gen.def @@ -149,8 +149,6 @@ mps_mv_free_size mps_class_mv ; mpscsnc.h mps_class_snc -; mpslibcb.h -mps_lib_callback_register ; mpstd.h ; mpsw3.h - by hand mps_SEH_filter