## System settings
##
-
##
## Installation paths
##
+# Installation path prefix. Unless you know what you're doing, the default
+# of /usr/local is likely the correct choice.
PREFIX=/usr/local
# Unless you are creating a package conforming to some OS's standards, you
# Message catalogs
LOCALEDIR=$(PREFIX)/share/locale
+# Executable suffix (for Cygwin).
+#BIN_SUFFIX = .exe
+
##
## Modules
# Set PRELOAD_MODULES=1 if your system does not support dynamically loaded
# modules through 'libdl' or has non-standard naming conventions.
+# You will likely need this option on e.g. Cygwin and Mac OS X.
#PRELOAD_MODULES=1
-# Flags to link with libdl.
+# Flags to link with libdl. Even if PRELOAD_MODULES=1, you may need this
+# setting (for e.g. Lua, when not instructed by pkg-config).
DL_LIBS=-ldl
# what you want.
#LUA_LIBS=`pkg-config --libs lua5.1`
#LUA_INCLUDES=`pkg-config --cflags lua5.1`
-#LUA=`which lua5.1`
-#LUAC=`which luac5.1`
+#LUA=/usr/bin/lua5.1
+#LUAC=/usr/bin/luac5.1
##
## X libraries, includes and options
##
+# Paths
X11_PREFIX=/usr/X11R6
# SunOS/Solaris
#X11_PREFIX=/usr/openwin
X11_LIBS=-L$(X11_PREFIX)/lib -lX11 -lXext
X11_INCLUDES=-I$(X11_PREFIX)/include
-# XFree86 libraries up to 4.3.0 have a bug that will cause Ion to segfault
-# if Opera is used when i18n support is enabled. The following setting
-# should work around that situation.
+# XFree86 libraries up to 4.3.0 have a bug that can cause a segfault.
+# The following setting should work around that situation.
DEFINES += -DCF_XFREE86_TEXTPROP_BUG_WORKAROUND
-# Use the Xutf8 routines (XFree86 extension) instead of Xmb routines in
-# an UTF8 locale.
+# Use the Xutf8 routines (XFree86 extension) instead of the Xmb routines
+# in an UTF-8 locale. (No, you don't need this in UTF-8 locales, and
+# most likely don't even want. It's only there because both Xmb and
+# Xutf8 routines are broken, in different ways.)
#DEFINES += -DCF_DE_USE_XUTF8
# Remap F11 key to SunF36 and F12 to SunF37? You may want to set this
##
-## libc
+## Localisation
##
-# You may uncomment this if you know your system has
-# asprintf and vasprintf in the c library. (gnu libc has.)
-# If HAS_SYSTEM_ASPRINTF is not defined, an implementation
-# in sprintf_2.2/ is used.
-#HAS_SYSTEM_ASPRINTF=1
-
-
# If you're on an archaic system (such as relatively recent *BSD releases)
# without even dummy multibyte/widechar and localisation support, you may
# have to uncomment the following line:
-#DEFINES += -DCF_NO_LOCALE
+#DEFINES += -DCF_NO_LOCALE -DCF_NO_GETTEXT
-# On some other systems you may something like this:
+# On some other systems you may need to explicitly link against libintl.
#EXTRA_LIBS += -lintl
-#EXTRA_INCLUDES +=
+# You may also need to give the location of its headers. The following
+# should work on Mac OS X (which needs the above option as well) with
+# macports.
+#EXTRA_INCLUDES += -I/opt/local/include
##
-## C compiler
+## libc
+##
+
+# You may uncomment this if you know that your system C libary provides
+# asprintf and vasprintf. (GNU libc does.) If HAS_SYSTEM_ASPRINTF is not
+# defined, an implementation provided in libtu/sprintf_2.2/ is used.
+#HAS_SYSTEM_ASPRINTF=1
+
+# The following setting is needed with GNU libc for clock_gettime and the
+# monotonic clock. Other systems may not need it, or may not provide a
+# monotonic clock at all (which Ion can live with, and usually detect).
+EXTRA_LIBS += -lrt
+
+# Cygwin needs this.
+#DEFINES += -DCF_NO_GETLOADAVG
+
+
+#
+# If you're using/have gcc, it is unlikely that you need to modify
+# any of the settings below this line.
+#
+#####################################################################
+
+
+##
+## C compiler.
##
CC=gcc
-Wtrigraphs -Wformat -Wchar-subscripts \
-Wparentheses -pedantic -Wuninitialized
-CFLAGS=-g -Os $(WARN) $(DEFINES) $(EXTRA_INCLUDES) $(INCLUDES)
-LDFLAGS=-g -Os $(EXTRA_LIBS) $(LIBS)
+CFLAGS=-Os $(WARN) $(DEFINES) $(INCLUDES) $(EXTRA_INCLUDES)
+LDFLAGS=$(LIBS) $(EXTRA_LIBS)
EXPORT_DYNAMIC=-Xlinker --export-dynamic
# The following options are mainly for development use and can be used
#C89_SOURCE=-ansi
-#POSIX_SOURCE=-D_POSIX_SOURCE
+POSIX_SOURCE=-D_POSIX_C_SOURCE=200112L
# Most systems
#XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED
##
DEPEND_FILE=.depend
-DO_MAKE_DEPEND=$(CC) -MM $(DEFINES) $(EXTRA_INCLUDES) $(INCLUDES)
+DO_MAKE_DEPEND=$(CC) -MM $(DEFINES) $(INCLUDES) $(EXTRA_INCLUDES)
MAKE_DEPEND=$(DO_MAKE_DEPEND) $(SOURCES) > $(DEPEND_FILE)
+
##
## AR
##
##
INSTALL=sh $(TOPDIR)/install-sh -c
+INSTALL_STRIP=-s
INSTALLDIR=mkdir -p
BIN_MODE=755
DATA_MODE=644
-STRIP=strip
-
RM=rm
+
+
+##
+## Debugging
+##
+
+#INSTALL_STRIP =
+#CFLAGS += -g
+