srcdir = . prefix = /usr/local exec_prefix = ${prefix} bindir = ${exec_prefix}/bin datadir = ${prefix}/share #CC = gcc #CFLAGS = -O2 -fomit-frame-pointer LFLAGS = -s INSTALL = install ZC = $(srcdir)/zinc/zc CONFIGDIR = ${datadir}/code-browser # Attempt to autodetect 64bit architecture ifndef MODE ifeq ($(shell uname -m), x86_64) MODE = 64 endif endif all: platform zc cb platform: @if [ "$(MODE)" = "64" ]; then \ echo "Building for x86_64 architecture..."; \ else \ echo "Building for x86 architecture..."; \ fi zc: @(cd $(srcdir)/zinc && $(MAKE) MODE=$(MODE)) cb: objs detect-file-chooser @echo Compiling zinc files... $(ZC) \ -I . \ -I $(srcdir)/lib/zlib \ -I $(srcdir)/lib/zlib/platform/linux$(MODE) \ -I $(srcdir)/lib/include \ -I $(srcdir)/lib/swift/gtk \ -I $(srcdir)/lib/swift/common \ $(srcdir)/src/main.zc -o cb.c @echo Compiling generated c file... $(CC) $(CFLAGS) -c cb.c -o cb.o `pkg-config gtk+-2.0 --cflags` @echo Linking... $(CC) $(LFLAGS) cb.o gtkcustom.o gtk.o gtk-resources.o io.o -o code-browser `pkg-config gtk+-2.0 --cflags --libs` objs: gtk.o gtkcustom.o gtk-resources.o io.o config.zc config.zc: @echo >config.zc public equ datadir = \"$(datadir)\" io.o: $(srcdir)/lib/zlib/file/private/io.c @echo io.c $(CC) $(CFLAGS) -c $(srcdir)/lib/zlib/file/private/io.c -o io.o gtk.o: $(srcdir)/lib/include/gtk/gtk.c @echo gtk.c $(CC) $(CFLAGS) -c $(srcdir)/lib/include/gtk/gtk.c -o gtk.o `pkg-config gtk+-2.0 --cflags` gtkcustom.o: $(srcdir)/lib/include/gtk/gtkcustom.c @echo gtkcustom.c $(CC) $(CFLAGS) -c $(srcdir)/lib/include/gtk/gtkcustom.c -o gtkcustom.o `pkg-config gtk+-2.0 --cflags` gtk-resources.o: $(srcdir)/res/gtk-resources.c @echo gtk-resources.c $(CC) $(CFLAGS) -c $(srcdir)/res/gtk-resources.c -o gtk-resources.o detect-file-chooser: @echo -n "Checking GTK+ 2.4... " @if pkg-config --exists 'gtk+-2.0 >= 2.4'; then echo Ok; else echo Failed; exit 1; fi install: $(INSTALL) -s code-browser $(bindir) $(INSTALL) -d $(CONFIGDIR) $(INSTALL) -d $(CONFIGDIR)/config $(INSTALL) -d $(CONFIGDIR)/config-default $(INSTALL) -d $(CONFIGDIR)/config-optional $(INSTALL) $(srcdir)/config/* $(CONFIGDIR)/config/ $(INSTALL) $(srcdir)/config-default/* $(CONFIGDIR)/config-default/ $(INSTALL) $(srcdir)/config-optional/* $(CONFIGDIR)/config-optional/ uninstall: rm -f $(bindir)/code-browser rm -rf $(CONFIGDIR) clean: rm -f *.o code-browser cb.c config.zc