2011-02-18 21:47:20 +00:00
|
|
|
# $Id$
|
|
|
|
# Build Golded+, Goldnode and RDDT using GNU make and CNU C++ compuler.
|
|
|
|
# You may use following parameters:
|
2011-02-18 22:30:49 +00:00
|
|
|
# "PLATFORM=xxx", where xxx specifies platform, one of:
|
|
|
|
# "cyg" - for MinGW or Cygwin (MinGW build),
|
2011-02-18 21:47:20 +00:00
|
|
|
# "lnx" - for GNU/Linux or any BSD,
|
|
|
|
# "emx" - for OS/2 EMX
|
|
|
|
# "sun" - for SunOS (Solaris)
|
|
|
|
# "osx" - for OS X
|
|
|
|
# "djg" - for DJGPP (DOS with DPMI)
|
|
|
|
# "be" - for BeOS
|
2011-02-18 22:30:49 +00:00
|
|
|
# "BUILD=minimal" Compile Golded+ with support only most popular formats of
|
2011-02-18 21:47:20 +00:00
|
|
|
# message bases (OPUS, Jam, Squish).
|
2011-02-18 22:30:49 +00:00
|
|
|
# "USE_NCURSES=0" if you dislike curses library (Linux version requires to
|
2011-02-18 21:47:20 +00:00
|
|
|
# use curses)
|
2011-02-18 22:30:49 +00:00
|
|
|
# "WIDE_NCURSES=1" if it is needed to use wide characters with curses library
|
|
|
|
# "BUGGY_NCURSES=1" if Golded+ requires additional keypresses to pass areascan
|
|
|
|
# "KOI8=1" Better koi-8 support for linux. Do not set this for
|
2011-02-18 21:47:20 +00:00
|
|
|
# international builds since latin-1 support will be broken.
|
2011-02-18 22:30:49 +00:00
|
|
|
# "ICONV=1" Use iconv library for recoding text. Experimental! Do not
|
2011-02-18 21:47:20 +00:00
|
|
|
# set this if you don't sure!
|
2015-11-28 07:03:46 +00:00
|
|
|
# "OLD_SHIFT_FN=1" Use original code, where use: F1-F12 and
|
|
|
|
# <Shift>+F3-F12 mapped to F15-F22.
|
|
|
|
#
|
|
|
|
# New code, by default, for orthodox terminals:
|
|
|
|
# xterm R6, PuTTY, urxvt, mapped <Shift>+F1-F10 to
|
|
|
|
# F11-F20 and <Ctrl>+<Shift>+F1-F10 to <Ctrl>+F11-F20.
|
|
|
|
#
|
|
|
|
# For modern terminals: xterm R7, gnome-terminal,
|
|
|
|
# Linux & FreeBSD console, DECFNK, mapped:
|
|
|
|
# <Shift>+F1-F12 to key_fn13 - key_fn24,
|
|
|
|
# <Ctrl>+F1-F12 to key_fn25 - key_fn36,
|
|
|
|
# <Ctrl>+<Shift>+F1-F12 to key_fn37 - key_fn48,
|
|
|
|
# <Alt>+F1-F12 to key_fn49 - key_fn60
|
2000-02-25 10:15:17 +00:00
|
|
|
|
|
|
|
include GNUmakef.def
|
2006-03-12 07:57:03 +00:00
|
|
|
include Config.def
|
2000-02-25 10:15:17 +00:00
|
|
|
|
2005-04-28 06:31:13 +00:00
|
|
|
.PHONY: all clean distclean dirs sourcelists deps docs
|
2001-05-27 19:28:13 +00:00
|
|
|
|
2011-02-18 21:47:20 +00:00
|
|
|
LIBS=gall gcui gcfg gmb3 glibc uulib smblib
|
2006-03-12 07:57:03 +00:00
|
|
|
ifneq ($(findstring GCFG_NO_MYSPELL, $(CPPFLAGS)), GCFG_NO_MYSPELL)
|
2006-04-08 04:30:32 +00:00
|
|
|
LIBS+=hunspell
|
2006-03-12 07:57:03 +00:00
|
|
|
endif
|
|
|
|
|
2000-02-25 10:15:17 +00:00
|
|
|
EXECUTABLES=golded3 goldnode rddt
|
|
|
|
|
2002-06-10 06:24:11 +00:00
|
|
|
all: sourcelists
|
2006-04-10 19:04:04 +00:00
|
|
|
@$(SHELL) -ec 'for i in $(foreach dir,$(LIBS),goldlib/$(dir)); do cd $$i; $(MAKE) all; cd ../..; done'
|
|
|
|
@$(SHELL) -ec 'for i in $(EXECUTABLES); do cd $$i; $(MAKE) all; cd ..; done'
|
|
|
|
@echo 'To build HTML man pages run "make docs".'
|
|
|
|
@echo 'To reduce binaries size (remove debug information) run "make strip".'
|
2000-02-25 10:15:17 +00:00
|
|
|
|
2002-06-10 06:24:11 +00:00
|
|
|
clean:
|
2006-04-10 19:04:04 +00:00
|
|
|
@$(SHELL) -ec 'for i in $(foreach dir,$(LIBS),goldlib/$(dir)); do cd $$i; $(MAKE) clean; cd ../..; done'
|
|
|
|
@$(SHELL) -ec 'for i in $(EXECUTABLES); do cd $$i; $(MAKE) clean; cd ..; done'
|
|
|
|
@-rm -f $(OBJPATH)/$(PLATFORM)/source.lst
|
2000-02-25 10:15:17 +00:00
|
|
|
|
2010-11-09 22:02:00 +00:00
|
|
|
distclean:
|
|
|
|
@-cd $(BIN); rm -f $(EXECUTABLES)
|
|
|
|
|
2000-02-25 10:15:17 +00:00
|
|
|
dirs:
|
2006-04-10 19:04:04 +00:00
|
|
|
@mkdir -p $(BIN) $(LIBPATH)/$(PLATFORM)
|
|
|
|
@mkdir -p $(foreach dir,$(LIBS),$(OBJPATH)/$(PLATFORM)/$(dir))
|
|
|
|
@mkdir -p $(foreach dir,$(EXECUTABLES),$(OBJPATH)/$(PLATFORM)/$(dir))
|
2001-05-27 19:28:13 +00:00
|
|
|
|
|
|
|
sourcelists: dirs
|
2006-04-10 19:04:04 +00:00
|
|
|
@$(SHELL) -ec 'for i in $(foreach dir,$(LIBS),goldlib/$(dir)); do cd $$i; $(MAKE) sourcelist; cd ../..; done'
|
|
|
|
@$(SHELL) -ec 'for i in $(EXECUTABLES); do cd $$i; $(MAKE) sourcelist; cd ..; done'
|
|
|
|
@echo -n >$(OBJPATH)/$(PLATFORM)/source.lst
|
2005-04-28 06:31:13 +00:00
|
|
|
|
|
|
|
docs:
|
2006-04-10 19:04:04 +00:00
|
|
|
@cd $@ ; $(MAKE) all ; cd ..
|
2005-08-19 21:42:23 +00:00
|
|
|
|
|
|
|
strip:
|
2006-04-10 19:04:04 +00:00
|
|
|
cd $(BIN)/ ; strip *$(PLATFORM)$(EXEEXT)
|