From: Matthew L. <me...@gm...> - 2005-01-25 23:30:53
|
This is what happens: C:\code\allegro>make installall STATICLINK=1 make msg lib install make[1]: Entering directory `C:/code/allegro' Compiling Allegro for MSVC, optimised statically linked. Please wait... make[1]: Nothing to be done for `lib'. mkdir C:\PROGRA~1\MICROS~2\VC98\lib A subdirectory or file C:\PROGRA~1\MICROS~2\VC98\lib already exists. make[1]: *** [create-install-dirs] Error 1 make[1]: Leaving directory `C:/code/allegro' make: *** [installall] Error 2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Around line 270 in makefile.all, I added the - in front of mkdir to ignore the error. I don't know make syntax very well, so I don't know if it thinks it's only mkdir'ing if it doesn't already exist or what. create-install-dirs: ifneq (,$(INSTALL_DIRS)) define MKDIRS $(foreach file, $(filter-out $(existing_dirs), $(INSTALL_DIRS)), \ -mkdir $(MKDIR_OPTS) $(file) ) endef $(MKDIRS) endif -- Matthew Leverton - ma...@al... http://www.allegro.cc |
From: Evert G. <eg...@dd...> - 2005-01-26 08:44:59
|
> This is what happens: > > C:\code\allegro>make installall STATICLINK=3D1 > make msg lib install > make[1]: Entering directory `C:/code/allegro' > Compiling Allegro for MSVC, optimised statically linked. Please wait... > make[1]: Nothing to be done for `lib'. > mkdir C:\PROGRA~1\MICROS~2\VC98\lib > A subdirectory or file C:\PROGRA~1\MICROS~2\VC98\lib already exists. > make[1]: *** [create-install-dirs] Error 1 > make[1]: Leaving directory `C:/code/allegro' > make: *** [installall] Error 2 Bloody &^!%%&@!&!@^**( This should be fixed now... I'm not sure what the problem is: > create-install-dirs: > ifneq (,$(INSTALL_DIRS)) > define MKDIRS > $(foreach file, $(filter-out $(existing_dirs), $(INSTALL_DIRS)), \ > -mkdir $(MKDIR_OPTS) $(file) > ) > endef > $(MKDIRS) > endif This code should only generate mkdir commandsfor directories that don't exist yet. For some reason, it's still trying to create them. Adding - infront of mkdir will indeed get rid of the error, but has anoth= er problem associated with it (which is why it isn't included by default): mkdir can fail for legitimate reasons too, in which case you don't want t= o ignore the error. I'm not sure what to do, but I suppose we should try to find out why this isn't detecting that those directories already exist... Evert |
From: Daniel S. <da...@bi...> - 2005-01-26 20:26:44
|
Matthew Leverton: > This is what happens: > > C:\code\allegro>>make installall STATICLINK=1 > make msg lib install > make[1]: Entering directory `C:/code/allegro' > Compiling Allegro for MSVC, optimised statically linked. Please wait... > make[1]: Nothing to be done for `lib'. > mkdir C:\PROGRA~1\MICROS~2\VC98\lib > A subdirectory or file C:\PROGRA~1\MICROS~2\VC98\lib already exists. > make[1]: *** [create-install-dirs] Error 1 > make[1]: Leaving directory `C:/code/allegro' > make: *** [installall] Error 2 Strange. What version of Make are you using? Evert Glebbeek: > Bloody &^!%%&@!&!@^**( Yeah. :( > This should be fixed now... I'm not sure what the problem is: Maybe the wildcard function in his version of Make behaves differently. > Adding - infront of mkdir will indeed get rid of the error, but has another > problem associated with it (which is why it isn't included by default): > mkdir can fail for legitimate reasons too, in which case you don't want to > ignore the error. > I'm not sure what to do, but I suppose we should try to find out why this > isn't detecting that those directories already exist... Maybe change command on Windows to use batch scripting: if not exist DIR ( mkdir DIR ) ? Do all Windows versions support this? Or maybe check output of $(shell cd DIR) to determine if DIR exists? Does cd output anything on other platforms on success? -- Daniel Schlyder http://bitblaze.com/ |
From: Elias P. <el...@us...> - 2005-01-26 20:40:25
|
On Wed, 2005-01-26 at 21:25 +0100, Daniel Schlyder wrote: > Maybe the wildcard function in his version of Make behaves differently. > Someone should file a bug report to the gnu make developers. But then, make and all the autotools seem to be like this - if something works with one version of the tool and on one platform, then you can be sure if won't work with another version of on another platform :| (I wonder what the source of make or any gnu autotools looks like - probably the biggest mess you can imagine :P) > > Adding - infront of mkdir will indeed get rid of the error, but has another > > problem associated with it (which is why it isn't included by default): > > mkdir can fail for legitimate reasons too, in which case you don't want to > > ignore the error. > > I'm not sure what to do, but I suppose we should try to find out why this > > isn't detecting that those directories already exist... > > Maybe change command on Windows to use batch scripting: > > if not exist DIR ( mkdir DIR ) > > ? Do all Windows versions support this? > Doesn't the windows mkdir support something like the -p option? It could just be used then, and mkdir called on all install dirs, no matter if they exist. -- Elias Pschernig |
From: Daniel S. <da...@bi...> - 2005-01-27 11:49:18
|
[Resending cause it didn't seem to reach the list the first time; apologies if you get it twice] Matthew Leverton: > This is what happens: > > C:\code\allegro>>make installall STATICLINK=1 > make msg lib install > make[1]: Entering directory `C:/code/allegro' > Compiling Allegro for MSVC, optimised statically linked. Please wait... > make[1]: Nothing to be done for `lib'. > mkdir C:\PROGRA~1\MICROS~2\VC98\lib > A subdirectory or file C:\PROGRA~1\MICROS~2\VC98\lib already exists. > make[1]: *** [create-install-dirs] Error 1 > make[1]: Leaving directory `C:/code/allegro' > make: *** [installall] Error 2 Strange. What version of Make are you using? Evert Glebbeek: > Bloody &^!%%&@!&!@^**( Yeah. :( > This should be fixed now... I'm not sure what the problem is: Maybe the wildcard function in his version of Make behaves differently. > Adding - infront of mkdir will indeed get rid of the error, but has another > problem associated with it (which is why it isn't included by default): > mkdir can fail for legitimate reasons too, in which case you don't want to > ignore the error. > I'm not sure what to do, but I suppose we should try to find out why this > isn't detecting that those directories already exist... Maybe change command on Windows to use batch scripting: if not exist DIR ( mkdir DIR ) ? Do all Windows versions support this? Or maybe check output of $(shell cd DIR) to determine if DIR exists? Does cd output anything on other platforms on success? -- Daniel Schlyder http://bitblaze.com/ |
From: Evert G. <eg...@dd...> - 2005-01-28 09:55:53
|
> > if not exist DIR ( mkdir DIR ) > > > > ? Do all Windows versions support this? You can't use exist to check for directories directly, if I recall. At least you couldn't in DOS. You'd have to check for if [not] exist DIR\nul or something like that... I don't remember, but can probably look it up. (once again wishes Windows were more like UNIX with things like this...) > Doesn't the windows mkdir support something like the -p option? It coul= d > just be used then, and mkdir called on all install dirs, no matter if > they exist. No, as far as I know it doesn't... unfortunately. Evert |
From: Daniel S. <da...@bi...> - 2005-01-28 16:56:43
|
Evert Glebbeek: >> > if not exist DIR ( mkdir DIR ) >> > >> > ? Do all Windows versions support this? > You can't use exist to check for directories directly, if I recall. At > least you couldn't in DOS. You'd have to check for if [not] exist DIR\nul > or something like that... I don't remember, but can probably look it up. > (once again wishes Windows were more like UNIX with things like this...) Yeah, I seem to remember something about nul, too. It works without on Windows XP, though. >> Doesn't the windows mkdir support something like the -p option? It could >> just be used then, and mkdir called on all install dirs, no matter if >> they exist. > No, as far as I know it doesn't... unfortunately. On Windows XP, mkdir creates intermediate directories if command extensions are enabled (the default, I think). But I guess this isn't supported on Windows 9x. -- Daniel Schlyder http://bitblaze.com/ |
From: Miquel 'F. B. <miq...@gm...> - 2005-01-28 14:40:14
|
On Windows XP Pro, the syntax is just: MKDIR [drive:]path Can't find any info with other switches (other than /?) On Fri, 28 Jan 2005 10:55:51 +0100, Evert Glebbeek <eg...@dd...> wrote: > > > if not exist DIR ( mkdir DIR ) > > > > > > ? Do all Windows versions support this? > > You can't use exist to check for directories directly, if I recall. At > least you couldn't in DOS. You'd have to check for if [not] exist DIR\nul > or something like that... I don't remember, but can probably look it up. > (once again wishes Windows were more like UNIX with things like this...) > > > Doesn't the windows mkdir support something like the -p option? It could > > just be used then, and mkdir called on all install dirs, no matter if > > they exist. > > No, as far as I know it doesn't... unfortunately. > > Evert > > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > -- > https://lists.sourceforge.net/lists/listinfo/alleg-developers > -- There is no sig. |
From: Matthew L. <me...@gm...> - 2005-01-28 22:28:16
|
First off, here is my make version: ~~~~~~~~~~~~~~~~~~ C:\code\allegro>make -v GNU Make version 3.79.1, by Richard Stallman and Roland McGrath. Built for mingw32 Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Report bugs to <bug...@gn...>. ~~~~~~~~~~~~~~~~~~ Regarding mkdir on Windows XP, it will automatically create any in-between paths. So a mkdir c:\foo\foo\foo\foo will always succeed (if there isn't a file named foo) if the last folder doesn't exist. Under Win 9x, such functionality does not exist. -- Matthew Leverton On Fri, 28 Jan 2005 09:39:22 -0500, Miquel 'Fire' Burns <miq...@gm...> wrote: > On Windows XP Pro, the syntax is just: MKDIR [drive:]path > > Can't find any info with other switches (other than /?) > > > On Fri, 28 Jan 2005 10:55:51 +0100, Evert Glebbeek <eg...@dd...> wrote: > > > > if not exist DIR ( mkdir DIR ) > > > > > > > > ? Do all Windows versions support this? > > > > You can't use exist to check for directories directly, if I recall. At > > least you couldn't in DOS. You'd have to check for if [not] exist DIR\nul > > or something like that... I don't remember, but can probably look it up. > > (once again wishes Windows were more like UNIX with things like this...) > > > > > Doesn't the windows mkdir support something like the -p option? It could > > > just be used then, and mkdir called on all install dirs, no matter if > > > they exist. > > > > No, as far as I know it doesn't... unfortunately. > > > > Evert > > > > > > ------------------------------------------------------- > > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > > Tool for open source databases. Create drag-&-drop reports. Save time > > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > > -- > > https://lists.sourceforge.net/lists/listinfo/alleg-developers > > > > > -- > There is no sig. > > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > -- > https://lists.sourceforge.net/lists/listinfo/alleg-developers > |
From: Daniel S. <da...@bi...> - 2005-01-29 01:03:43
|
Matthew Leverton: > First off, here is my make version: > ~~~~~~~~~~~~~~~~~~ C:\code\allegro>>make -v > GNU Make version 3.79.1, by Richard Stallman and Roland McGrath. The current version for MinGW is 3.80 and was released on 2003-06-19. IMHO, forcing people to upgrade is an acceptable solution. -- Daniel Schlyder http://bitblaze.com/ |
From: Matthew L. <me...@gm...> - 2005-01-29 18:34:35
|
It did indeed work on 3.80. If the solution ends up being to tell people to upgrade, then it should be made painfully clear to the person installing Allegro. (The first impression will be "Allegro's broken.") A lot of people probably just have MinGW's make so that they can build Allegro for MSVC, so they won't necessarily be keeping it up to date. If it is known that you must have 3.80 to build (install) Allegro, then it would be nice if the make process could detect that and tell the user. -- Matthew Leverton > The current version for MinGW is 3.80 and was released on 2003-06-19. IMHO, > forcing people to upgrade is an acceptable solution. > > -- > Daniel Schlyder > http://bitblaze.com/ |
From: Evert G. <eg...@dd...> - 2005-02-06 22:48:52
|
On Saturday 29 January 2005 19:34, Matthew Leverton wrote: > It did indeed work on 3.80. If the solution ends up being to tell > people to upgrade, then it should be made painfully clear to the > person installing Allegro. (The first impression will be "Allegro's > broken.") A lot of people probably just have MinGW's make so that they > can build Allegro for MSVC, so they won't necessarily be keeping it up > to date. > > If it is known that you must have 3.80 to build (install) Allegro, > then it would be nice if the make process could detect that and tell > the user. Any progress on this? At the very least, we should check that the docs say that Make v3.80 or better is required... Evert |
From: Daniel S. <da...@bi...> - 2005-02-07 01:13:23
|
Evert Glebbeek: >> If it is known that you must have 3.80 to build (install) Allegro, >> then it would be nice if the make process could detect that and tell >> the user. > Any progress on this? At the very least, we should check that the docs say > that Make v3.80 or better is required... I guess that means patching doc/build/msvc.txt ? I was sort of waiting for someone to decide if requiring Make 3.80 is OK. I think it is, especially if this isn't a general Make problem. I was gonna try to determine this by testing Make 3.79.1 on a few different platforms, but gave up when I couldn't reproduce the bug with MinGW. :( -- Daniel Schlyder http://bitblaze.com/ |