aboutsummaryrefslogtreecommitdiffhomepage
path: root/Makefile
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2012-11-22 13:56:54 +0100
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2012-11-22 13:56:54 +0100
commit0e548698bbbdecc84173ca129a454d6bedf4438f (patch)
treeed39ccbdd04d9ac20d9cef815d4efd357958d46f /Makefile
parent25bdcb17d76d0fb36a73527f210fc367a6b014e8 (diff)
downloadsciteco-0e548698bbbdecc84173ca129a454d6bedf4438f.tar.gz
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
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile35
1 files 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]