diff options
author | Tamar Christina <tamar@zhox.com> | 2017-08-28 12:29:48 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-08-29 12:38:10 -0400 |
commit | 5266ab9059dffa741b172636f50f1fbfd491dbb4 (patch) | |
tree | 33a59d9f309d775e318cef3b160cec34f359e0c3 /rules/build-package-way.mk | |
parent | db3a8e168ad81f54ec58eebc4c75a0eaad889daf (diff) | |
download | haskell-5266ab9059dffa741b172636f50f1fbfd491dbb4.tar.gz |
Remove dll-split.
This patch removes dll-split from the code base, the reason is dll-split
no longer makes any sense. It was designed to split a dll in two, but we
now already have many more symbols than would fit inside two dlls. So we
need a third one. This means there's no point in having to maintain this
list as it'll never work anyway and the solution isn't scalable.
Test Plan: ./validate
Reviewers: austin, bgamari
Reviewed By: bgamari
Subscribers: rwbarton, thomie, #ghc_windows_task_force
GHC Trac Issues: #5987
Differential Revision: https://phabricator.haskell.org/D3882
Diffstat (limited to 'rules/build-package-way.mk')
-rw-r--r-- | rules/build-package-way.mk | 43 |
1 files changed, 3 insertions, 40 deletions
diff --git a/rules/build-package-way.mk b/rules/build-package-way.mk index 3b4d1c926c..73fc684257 100644 --- a/rules/build-package-way.mk +++ b/rules/build-package-way.mk @@ -23,18 +23,10 @@ $(call hs-objs,$1,$2,$3) # The .a/.so library file, indexed by two different sets of vars: # the first is indexed by the dir, distdir and way # the second is indexed by the package id, distdir and way -$1_$2_$3_LIB_FILE = libHS$$($1_$2_COMPONENT_ID)$$($3_libsuf) +$1_$2_$3_LIB_FILE = libHS$$($1_$2_COMPONENT_ID)$(subst .,%,$$($3_libsuf)) $1_$2_$3_LIB = $1/$2/build/$$($1_$2_$3_LIB_FILE) $$($1_$2_COMPONENT_ID)_$2_$3_LIB = $$($1_$2_$3_LIB) -ifeq "$$(TargetOS_CPP)" "mingw32" -ifneq "$$($1_$2_dll0_HS_OBJS)" "" -$1_$2_$3_LIB0_ROOT = HS$$($1_$2_COMPONENT_ID)-0$$($3_libsuf) -$1_$2_$3_LIB0_NAME = lib$$($1_$2_$3_LIB0_ROOT) -$1_$2_$3_LIB0 = $1/$2/build/$$($1_$2_$3_LIB0_NAME) -endif -endif - # Note [inconsistent distdirs] # # hack: the DEPS_LIBS mechanism assumes that the distdirs for packages @@ -62,32 +54,11 @@ $1_$2_$3_ALL_OBJS = $$($1_$2_$3_HS_OBJS) $$($1_$2_$3_NON_HS_OBJS) ifeq "$3" "dyn" -ifneq "$$($1_$2_dll0_MODULES)" "" -$$($1_$2_$3_LIB) : $1/$2/dll-split.stamp -ifneq "$$($1_$2_$3_LIB0)" "" -$$($1_$2_$3_LIB0) : $1/$2/dll-split.stamp -endif -endif - -$1/$2/dll-split.stamp: $$($1_$2_depfile_haskell) $$$$(dll-split_INPLACE) - $$(dll-split_INPLACE) $$< "$$($1_$2_dll0_START_MODULE)" "$$($1_$2_dll0_MODULES)" - touch $$@ - # Link a dynamic library # On windows we have to supply the extra libs this one links to when building it. ifeq "$$(TargetOS_CPP)" "mingw32" $$($1_$2_$3_LIB) : $$($1_$2_$3_ALL_OBJS) $$(ALL_RTS_LIBS) $$($1_$2_$3_DEPS_LIBS) -ifneq "$$($1_$2_$3_LIB0)" "" - $$(call build-dll,$1,$2,$3,-L$1/$2/build -l$$($1_$2_$3_LIB0_ROOT),$$(filter-out $$($1_$2_dll0_HS_OBJS),$$($1_$2_$3_HS_OBJS)) $$($1_$2_$3_NON_HS_OBJS),$$@) -else - $$(call build-dll,$1,$2,$3,,$$($1_$2_$3_HS_OBJS) $$($1_$2_$3_NON_HS_OBJS),$$@) -endif - -ifneq "$$($1_$2_$3_LIB0)" "" -$$($1_$2_$3_LIB) : $$($1_$2_$3_LIB0) -$$($1_$2_$3_LIB0) : $$($1_$2_$3_ALL_OBJS) $$(ALL_RTS_LIBS) $$($1_$2_$3_DEPS_LIBS) - $$(call build-dll,$1,$2,$3,,$$($1_$2_dll0_HS_OBJS) $$($1_$2_$3_NON_HS_OBJS),$$($1_$2_$3_LIB0)) -endif + $$(call build-dll,$1,$2,$3,-L$1/$2/build,,$$($1_$2_$3_HS_OBJS) $$($1_$2_$3_NON_HS_OBJS),"$$@","NO","$$($1_PACKAGE)","$$($1_$2_VERSION)") else # ifneq "$$(TargetOS_CPP)" "mingw32" $$($1_$2_$3_LIB) : $$($1_$2_$3_ALL_OBJS) $$(ALL_RTS_LIBS) $$($1_$2_$3_DEPS_LIBS) @@ -116,14 +87,6 @@ else endif $$(call removeFiles,$$@.contents) -ifeq "$$(TargetOS_CPP)" "mingw32" -ifneq "$$($1_$2_$3_LIB0)" "" -$$($1_$2_$3_LIB) : $$($1_$2_$3_LIB0) -$$($1_$2_$3_LIB0) : - $$(call cmd,$1_$2_AR) $$($1_$2_AR_OPTS) $$($1_$2_EXTRA_AR_ARGS) $$@ -endif -endif - endif # "$3" "dyn" $(call all-target,$1_$2,all_$1_$2_$3) @@ -133,7 +96,7 @@ $(call all-target,$1_$2_$3,$$($1_$2_$3_LIB)) ifneq "$4" "0" BINDIST_HI += $$($1_$2_$3_HI) BINDIST_LIBS += $$($1_$2_$3_LIB) -BINDIST_LIBS += $$($1_$2_$3_LIB0) +# Need to put the split libs and import libraries here endif ifeq "$$($1_$2_SplitSections)" "YES" |