summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
704c25a)
Oh, this is annoying. GCC prefers `/usr/local/include/...' over
`/usr/include', so old versions of header files, e.g., from local
package builds, take precedence over system versions of the same headers
installed through APT, which obviously breaks `sbuild' builds.
Fix this by introducing a new `/usr/local/include.aside' directory where
headers actually live, and bind-mounting this into `/usr/local/include'
when we're actually trying to build a local package.
$(V_AT)mkdir -p $(dir $(patsubst %/,%,$@))
$(call v_tag,MKDIR)mkdir $@
$(V_AT)mkdir -p $(dir $(patsubst %/,%,$@))
$(call v_tag,MKDIR)mkdir $@
-LOCAL_ARCH_DIRS = bin/ etc/ games/ include/ lib/ libexec/ sbin/
+LOCAL_ARCH_DIRS = bin/ etc/ games/ include/ include.aside/
+LOCAL_ARCH_DIRS += lib/ libexec/ sbin/
LOCAL_ARCH_LINKS = man
man_LINKDEST = share/man
all:: $(foreach a,$(ALL_ARCHS),\
LOCAL_ARCH_LINKS = man
man_LINKDEST = share/man
all:: $(foreach a,$(ALL_ARCHS),\
run_schroot_session(session,
["mount", "-oremount,rw", "/usr/local.schroot"],
rootp = True, stdin = DISCARD)
run_schroot_session(session,
["mount", "-oremount,rw", "/usr/local.schroot"],
rootp = True, stdin = DISCARD)
+ run_schroot_session(session,
+ ["mount", "--bind",
+ "/usr/local.schroot/%s/include.aside" % arch,
+ "/usr/local.schroot/%s/include" % arch],
+ rootp = True, stdin = DISCARD)
progress("configure `%s' %s for %s" % (pkg, ver, arch))
run_schroot_session(session, ["sh", "-e", "-c", """
progress("configure `%s' %s for %s" % (pkg, ver, arch))
run_schroot_session(session, ["sh", "-e", "-c", """