From 0e548698bbbdecc84173ca129a454d6bedf4438f Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Thu, 22 Nov 2012 13:56:54 +0100 Subject: Windows compile fixes * as always, link order is relevant * PDCurses is default curses on Windows * use BSD headers from compat/ * detect OS automatically using uname --- Makefile | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index f90d3fb..a65b860 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,19 @@ +# GTK or NCURSES INTERFACE?=GTK + +OS:=$(shell uname) + +ifneq ($(findstring MINGW32,$(OS)),) +PREFIX?=/mingw +else PREFIX?=/usr/local +endif GOB2:=gob2 CC:=gcc CXX:=g++ +TOUCH:=touch INSTALL:=install GLIB_CFLAGS:=$(shell pkg-config --cflags glib-2.0) @@ -15,20 +24,34 @@ SCI_CFLAGS:=-I$(SCI_DIR)/include -D$(INTERFACE) -DSCI_LEXER SCI_LDFLAGS:=$(SCI_DIR)/bin/scintilla.a ifeq ($(INTERFACE),GTK) + GTK_CFLAGS:=$(shell pkg-config --cflags gtk+-2.0) GTK_LDFLAGS:=$(shell pkg-config --libs gtk+-2.0) + else ifeq ($(INTERFACE),NCURSES) + SCI_CFLAGS+=-I$(SCI_DIR)/scinterm + +ifeq ($(OS),Linux) NCURSES_CFLAGS:= NCURSES_LDFLAGS:=-lncurses +else +NCURSES_CFLAGS:= +NCURSES_LDFLAGS:=-lpdcurses +endif + endif CPPFLAGS:=-DINTERFACE_$(INTERFACE) CFLAGS:=-Wall -std=c99 -g -O0 \ - $(GLIB_CFLAGS) $(GTK_CFLAGS) $(NCURSES_CFLAGS) $(SCI_CFLAGS) + $(GLIB_CFLAGS) $(SCI_CFLAGS) $(GTK_CFLAGS) $(NCURSES_CFLAGS) CXXFLAGS:=-Wall -g -O0 \ - $(GLIB_CFLAGS) $(GTK_CFLAGS) $(NCURSES_CFLAGS) $(SCI_CFLAGS) -LDFLAGS:=$(GLIB_LDFLAGS) $(GTK_LDFLAGS) $(NCURSES_LDFLAGS) $(SCI_LDFLAGS) + $(GLIB_CFLAGS) $(SCI_CFLAGS) $(GTK_CFLAGS) $(NCURSES_CFLAGS) +LDFLAGS:=$(GLIB_LDFLAGS) $(SCI_LDFLAGS) $(GTK_LDFLAGS) $(NCURSES_LDFLAGS) + +ifneq ($(findstring MINGW32,$(OS)),) +CPPFLAGS+=-Icompat +endif all : sciteco @@ -41,14 +64,14 @@ ifeq ($(INTERFACE),GTK) interface.a : interface-gtk.o gtk-info-popup.o $(AR) rc $@ $^ - touch $@ + $(TOUCH) $@ interface-gtk.o : gtk-info-popup.h else ifeq ($(INTERFACE),NCURSES) interface.a : interface-ncurses.o $(AR) rc $@ $^ - touch $@ + $(TOUCH) $@ endif @@ -59,5 +82,5 @@ install: all $(INSTALL) sciteco $(PREFIX)/bin clean: - $(RM) sciteco *.o *.a + $(RM) sciteco *.o *.a *.exe $(RM) gtk-info-popup*.[ch] -- cgit v1.2.3