empty=
space=$(empty) $(empty)
-ifeq "$(Windows)" "YES"
-dot_bat=.bat
-else
-dot_bat=
-endif
-
# -----------------------------------------------------------------------------
ifneq "$(DOING_BIN_DIST)" "YES"
# We should depend on %/%.cabal here (and in other rules), but make
# makes that difficult.
+# We explicitly set datadir to "$prefix/share" as, while that is the
+# default on Linux, on Windows it defaults to
+# "C:\\Program Files\\Common Files"
+
+# We also set libsubdir differently on Windows and non-Windows, as on
+# non-Windows the path we deduce is highre up than the path passed to
+# the executable with the shell script on non-Windows. This should
+# probably be tidied up so that we can always pass the same libsubdir.
+ifeq "$(Windows)" "YES"
+libsubdir = $$pkgid
+else
+libsubdir = $$compiler/lib/$$pkgid
+endif
+
$(foreach SUBDIR,$(SUBDIRS), \
stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).$(SUBDIR)): \
stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).%: %/setup/Setup
( cd $* && setup/Setup configure \
$(CONFIGURE_OPTS) \
--prefix='$$topdir' \
- --libsubdir='$$compiler/lib/$$pkgid' \
+ --datadir='$$prefix/share' \
+ --libsubdir='$(libsubdir)' \
--with-compiler=../../compiler/ghc-inplace$(dot_bat) \
--with-hc-pkg=../../utils/ghc-pkg/ghc-pkg-inplace$(dot_bat) \
--with-hsc2hs=../../utils/hsc2hs/hsc2hs-inplace$(dot_bat) \
binary-dist.library.%:
$(MKDIRHIER) $(BIN_DIST_LIBDIR)/$*
ifBuildable/ifBuildable $* cp $*.cabal $(BIN_DIST_LIBDIR)/$*
- ifBuildable/ifBuildable $* cp .setup-config $(BIN_DIST_LIBDIR)/$*
ifBuildable/ifBuildable $* cp -a dist $(BIN_DIST_LIBDIR)/$*
# Euch
ifBuildable/ifBuildable $* cp -aL include $(BIN_DIST_LIBDIR)/$* || :