> -----Original Message----- > From: Tom Lane [mailto:[EMAIL PROTECTED] > Sent: 27 September 2005 18:57 > To: Magnus Hagander > Cc: Dave Page; Peter Eisentraut; pgsql-hackers@postgresql.org > Subject: Re: [HACKERS] Making pgxs builds work with a > relocated installation > > "Magnus Hagander" <[EMAIL PROTECTED]> writes: > > Using GetShortPathName() will break on any system that has disabled > > short filename generatino, which IIRC is a recommended best practice > > both for performance and for security in legacy apps. I > don't know what > > it does, but probably it will just return the same long path again. > > Yuck. Anyone have another idea on coping with space-containing > pathnames? I suppose we could try to quote the path > variables properly > in all the makefiles, but that sure seems like a painful proposition.
Actually it seems to work quite nicely - on Windows 2000 with short names disabled it generates paths like: C:\PROGRA~1\PostgreSQL\8.1-beta2\bin Ie, it still fixes the spaces, but leaves the long bits, umm, long. With short names enabled (on XP), you get: C:\PROGRA~1\POSTGR~1\827E4~1.1-B\bin Which is truly hideous, but works as expected in cmd.exe and Msys. Patch attached that does this, and doubles up on the backslashes to keep msys/make happy. Cmd.exe doesn't seem to care about the double backslashes. Regards, Dave
pg_config c.diff
Description: pg_config c.diff
---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster