[Geany-devel] Remove MSYS dependency of Geany on Win~1

Dimitar Zhekov dimitar.zhekov at xxxxx
Tue Jun 19 17:12:30 UTC 2012


Hi,

Now that 1.22 is out, how about removing the MSYS build dependency
under Win~1? I tried to compile Geany with the default MinGW make,
without any MSYS, and there were some easily fixable problems:

cd foo && $(MAKE) -f makefile.win32 && cd ..\..

does not work, probably requires some sh. But if we depend on GNU make
(which seems to be the case, since we're using ifdef/else/endif), it's
easier and shorter to:

$(MAKE) -C foo -f makefile.win32


Linking does not work, because the stock make supports \ only for
variables, not commands. But that's even easier to fix:

STLIBS
= ../scintilla/scintilla.a ../tagmanager/tagmanager.a ../tagmanager/mio/mio.a

$(TARGET): $(OBJS) $(RES) $(STLIBS)
	$(CXX) $(OBJS) $(RES) -o $(TARGET) $(STLIBS) $(ALL_GTK_LIBS)
$(WIN_LIBS)

with the added benefit that static library names are not repeated
literally.


There is also some inconsistency: CP = copy, but "cp -r" and "cp" at
the end of makefile. The install target can be rewritten as several
-$(MD) and non-recursive $(CP) commands, and no MSYS will be required.


RFC. If we consider this worthy, I can make the required changes.

-- 
E-gards: Jimmy



More information about the Devel mailing list