[Geany-devel] Remove MSYS dependency of Geany on Win~1
Matthew Brush
mbrush at xxxxx
Mon Jun 25 20:52:12 UTC 2012
On 12-06-25 12:33 PM, Dimitar Zhekov wrote:
> On Fri, 22 Jun 2012 13:08:22 -0700
> Matthew Brush <mbrush at codebrainz.ca> wrote:
>
> Hi. Here is a small diff (for makefile.win32 and src/makefile.win32
> only) that makes Geany 1.22 Win~1 compilation and installation
> independent of MSYS. Usage:
>
> C> mingw32-make -f makefile.win32
> C> mingw32-make -f makefile.win32 install
>
> Tested with mingw, cmd/tcc. Should work with MSYS make too... but I had
> to use backslashes in the install: target, and am not sure if/how MSYS
> make escapes them. Win~1 fully supports forward slashes internally, but
> the command interpreters have only partial support.
>
Which command interpreters? AFAIK `cmd.exe` supports it fine, no?
>> Also, on the topic of improving the win32 makefiles, we should make sure
>> that all paths are quoted because IIRC last time I tried to use them,
>> stuff like this[1] made it blow up when my PREFIX was (for example),
>> `C:/Documents and Settings/...` (ie. spaces in the filename).
>
> All install: destination paths, yes. About the others - will anyone put
> gtk+ under "C:\Documents and Settings", or something like that?
>
IIRC mine was:
%HOMEPATH%/gtk = C:/Documents and Settings/Matthew Brush/gtk
But I could even imagine:
C:/Program Files/GTK
Or even:
G:/GTK Stuff
> The truth to be said, all paths should be quoted under all OS-es, but
> nobody does that unless a path with spaces is really likely.
>
For anything on Windows, spaces in filenames is *really* likely :)
Out of curiosity/boredom I tried on Linux for Autotools to use
./configure --prefix=/tmp/Geany\ Stuff
And it almost went all the way though, except for I needed to add pair
of unescaped quotes here:
https://github.com/geany/geany/blob/master/plugins/Makefile.am#L106
And the final step of installing the geany binary failed with:
test -z "/tmp/Geany Stuff/bin" || /bin/mkdir -p "/tmp/Geany Stuff/bin"
/bin/bash ../libtool --silent --mode=install /usr/bin/install -c
geany '/tmp/Geany Stuff/bin'
/usr/bin/install: target `Stuff/bin/geany' is not a directory
make[2]: *** [install-binPROGRAMS] Error 1
Which seems strange since `/usr/bin/install -c geany '/tmp/Geany
Stuff/bin'` on its own works just fine.
Anyway, that's the extent of how much I care about it, and I haven't
used Windows in many months, so it doesn't really matter anyway to me. I
just figured that it's not often we can fix bugs with 2 characters ("")
so it might be worthwhile :)
Cheers,
Matthew Brush
More information about the Devel
mailing list