[bug #34818] PATH_SEPARATOR_CHAR broken for windows when cross-compiled
URL: http://savannah.gnu.org/bugs/?34818 Summary: PATH_SEPARATOR_CHAR broken for windows when cross-compiled Project: make Submitted by: sezero Submitted on: Mon 14 Nov 2011 11:04:23 AM GMT Severity: 3 - Normal Item Group: None Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Component Version: None Operating System: MS Windows Fixed Release: None Triage Status: None ___ Details: PATH_SEPARATOR_CHAR is defined incorrectly when make is configured for windows in a cross-build environment such as on linux. The issue was noticed during this discussion: http://sourceforge.net/mailarchive/message.php?msg_id=26032191 The fix patch was posted by Chris Sutcliffe here: http://lists.gnu.org/archive/html/make-w32/2010-08/msg00039.html It was approved, AFAICS, but hasn't been applied, so far. Creating this bug entry so that this doesn't get lost/forgotten. ___ File Attachments: --- Date: Mon 14 Nov 2011 11:04:23 AM GMT Name: make-PATH_SEPARATOR_CHAR.patch Size: 948B By: sezero PATH_SEPARATOR_CHAR fix when cross-compiling http://savannah.gnu.org/bugs/download.php?file_id=24368 ___ Reply to this item at: http://savannah.gnu.org/bugs/?34818 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
[bug #34818] PATH_SEPARATOR_CHAR broken for windows when cross-compiled
Follow-up Comment #2, bug #34818 (project make): A slightly cleaner implementation might have PATH_SEPARATOR_CHAR defined in the various target-specific config.h files on systems that don't support autoconf, ... Autoconf _is_ the problem here, because its PATH_SEP detection is not cross-compilation-friendly, therefore it needs defining per- target-OS. See, e.g., the binutils tree, for example, where they use autotools is used PATH_SEPARATOR+shell scripts thingies, but all *.c and *.h define it themselves. (I am not an autools expert, though..) ___ Reply to this item at: http://savannah.gnu.org/bugs/?34818 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
[bug #34818] PATH_SEPARATOR_CHAR broken for windows when cross-compiled
Follow-up Comment #3, bug #34818 (project make): Maybe I don't understand the context. For typical Windows, VMS, OS2, etc. builds GNU make doesn't run autotools (as I understand it). It has predefined config.h variations for those targets and you copy the right one over to config.h before you build (or the build script or whatever does it for you). Adding PATH_SEPARATOR_CHAR there wouldn't be an issue for autotools. ___ Reply to this item at: http://savannah.gnu.org/bugs/?34818 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
[bug #34818] PATH_SEPARATOR_CHAR broken for windows when cross-compiled
Follow-up Comment #4, bug #34818 (project make): ... For typical Windows, VMS, OS2, etc. builds GNU make doesn't run autotools (as I understand it). Well, _need_ not run autotools, if one is lazy or especially when building on the native OS itself, provided that he has his own build scripts or makefiles, etc. When cross-compiling from linux (or whatever else unix) to windows, djgpp, os2 or whatever, one usually does use and usually prefers using autotools. There you have the problems with autotool's PATH_SEPARATOR_CHAR. I do not object to adding OS-specific PATH_SEPARATOR_CHAR values to OS-specific config.h templates, however removing those defines from make.h _shall_ lead to trouble. ___ Reply to this item at: http://savannah.gnu.org/bugs/?34818 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
[bug #34818] PATH_SEPARATOR_CHAR broken for windows when cross-compiled
Follow-up Comment #5, bug #34818 (project make): Gotcha. I didn't realize people were using autotools with Windows targets. Cross-compiling for a Windows target sounds funky to me but I definitely see the attraction there :-). ___ Reply to this item at: http://savannah.gnu.org/bugs/?34818 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
[bug #34818] PATH_SEPARATOR_CHAR broken for windows when cross-compiled
Follow-up Comment #6, bug #34818 (project make): Cross-compiling for a Windows target sounds funky to me but I definitely see the attraction there :-) Yep :) I, for one, compile 95% of times on linux rather than on windows or djgpp. ___ Reply to this item at: http://savannah.gnu.org/bugs/?34818 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make