Open Bug 1358477 Opened 8 years ago Updated 3 years ago

A colon ':' in the path name breaks builds with an unrelated client.mk error.

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(Not tracked)

UNCONFIRMED

People

(Reporter: layus, Unassigned)

Details

If the build tree is in a directory that contains a colon, it wont build. ** Showtime! ** > $ echo $PWD > /home/layus/projects/silly:colon/mozilla-central > > $ ./mach build > 0:00.74 /usr/bin/make -f client.mk -s > 0:01.08 client.mk:195: *** target pattern contains no '%'. Stop. > 0:01.11 0 compiler warnings present. > > $ cat -n client.mk | grep "195" -C 5 > 190 > 191 ifdef WANT_MOZCONFIG_MK > 192 # For now, only output "export" lines and lines containing UPLOAD_EXTRA_FILES > 193 # from mach environment --format=client.mk output. > 194 MOZCONFIG_MK_LINES := $(filter export||% UPLOAD_EXTRA_FILES% %UPLOAD_EXTRA_FILES%,$(MOZCONFIG_OUT_LINES)) > **195 $(OBJDIR)/.mozconfig.mk: $(TOPSRCDIR)/client.mk $(FOUND_MOZCONFIG) $(call mkdir_deps,$(OBJDIR)) $(OBJDIR)/CLOBBER > 196 $(if $(MOZCONFIG_MK_LINES),( $(foreach line,$(MOZCONFIG_MK_LINES), echo '$(subst ||, ,$(line))';) )) > $@ > 197 ifdef MOZ_CURRENT_PROJECT > 198 echo export MOZ_CURRENT_PROJECT=$(MOZ_CURRENT_PROJECT) >> $@ > 199 endif > 200 The problem comes at that line, because something gets expanded, and make sees a line with two colons, which is not valid (except when a '%' is to be found somewhere apparently...). http://stackoverflow.com/a/37333335 was enligthening. Now it seems that this is fundamentally broken, and cannot be made to work correctly, as per http://lists.gnu.org/archive/html/bug-make/2004-10/msg00010.html. So this is basically a "wontfix", but I wanted to share this knowledge, and share this astonishing shortcoming of gmake.
Severity: normal → minor
Product: Core → Firefox Build System
Severity: minor → S4
You need to log in before you can comment on or make changes to this bug.