#
# This file is part of the Simutrans project under the Artistic License.
# (see LICENSE.txt)
#

# this is config.default.in

#BACKEND := gdi
#BACKEND := sdl2
#BACKEND := posix
BACKEND = @backend@

#OSTYPE := amiga
#OSTYPE := beos
#OSTYPE := freebsd
#OSTYPE := haiku
#OSTYPE := linux
#OSTYPE := mac
#OSTYPE := mingw
#OSTYPE := openbsd
OSTYPE = @os_type@

#DEBUG := 1    # Level 1-3, higher number means more debug-friendly but slower, see Makefile
MSG_LEVEL := 3 # Level 1-4, more runtime debug messages (without only warnings and errors)
OPTIMISE := 1 # Add umpteen optimisation flags
#PROFILE := 1  # Enable profiling
#PROFILE := 2  # Enable profiling with optimisation flags, can be used with `OPTIMISE = 1'

STATIC := 1   # Enable static linkage (to be at least somewhat portable), Freetype and SDL only for non-MinGW OSTYPE.
AV_FOUNDATION := @av_foundation@  # Use AVFoundation instead of QTKit. If you are building on macOS 10.12 or later, this must be enabled.

WITH_REVISION := @svn@ # adds the revision from svn; required for networkgames
# if you do not use SVN, add -DREVISION="1234" to the FLAGS below

#WIN32_CONSOLE := 1 # adds a console for windows debugging

MULTI_THREAD := @multithread@ # Enable multithreading, highly recommended
BUNDLE_PTHREADGC2 := @bundlepthread@

# using UPnP for easy server hosting behind routers
USE_UPNP := @upnp@

# using fontconfig for linux/mac TTF selection
USE_FONTCONFIG := @fontconfig@

# using zstd compression
USE_ZSTD := @zstd@

# using FluidSynth for MIDI playback (SDL2 backend needed for Linux/MacOS, SDL2 or GDI for MinGW)
USE_FLUIDSYNTH_MIDI := @fluidsynth@

# enable link time optimizations
#LTO := 1

# Define these as empty strings, if you don't have the respective config program
#ALLEGRO_CONFIG :=
#PNG_CONFIG     :=
#SDL_CONFIG     :=
#SDL2_CONFIG    :=
#FREETYPE_CONFIG :=

# Or define as the config program if you do
#ALLEGRO_CONFIG := allegro-config
#PNG_CONFIG     := pkg-config libpng
#SDL_CONFIG     := sdl-config
#SDL2_CONFIG    := sdl2-config
#FREETYPE_CONFIG := freetype-config

#VERBOSE := 1

# The following useful conditional compilation flags exist
#
# Needed to compile:
# SIM_BIG_ENDIAN: MUST be set for PPC/Motorola byte order! (old mac, amiga)
# NO_INTPTR_T: must be set if intptr_t is not available
#
# Changing appearance:
# USE_SOFTPOINTER: emulate mouse pointer (set automatically in Makefile)
#
# Useful for debugging:
# DEBUG_ROUTES: show routing calculation information in minimap
# SHOW_FORE_GRUND: show which objects are drawn as foreground
# DEBUG_FLUSH_BUFFER: show the dirty areas on the screen
# USE_VALGRIND_MEMCHECK: make valgrind-memcheck aware of the memory allocation stuff in dataobj/freelist
# SYSLOG: send debug output to syslog
#
# Following flags alter game engine (and are off for standard builds)
# OTTD_LIKE: Enables half height tiles and crossconnects all industries
# AUTOMATIC_BRIDGES and AUTOMATIC_TUNNELS: will be built also for player
# AUTOJOIN_PUBLIC: stations next to a public stop will be joined to it
# MAX_CHOOSE_BLOCK_TILES=xxx: maximum distance between choose signal and a target (undefined means no limit)
# DESTINATION_CITYCARS: Citycars can have a destination (not recommended)
#
# In order to use the flags, add a line like this: (-Dxxx)
# FLAGS := -DREVISION="1234"
FLAGS := @endian@

# Output directories:
#
# use this put objects file in same directory, where the sources are (not recommended):
# ... otherwise defaults to 'build/default')
#
# BUILDDIR := $(shell pwd)
#
# use this to specify the target directory for the executable:
# .. otherwise defaults to BUILDDIR
#
MAKEOBJ_PROGDIR := $(shell pwd)
NETTOOL_PROGDIR := $(shell pwd)
PROGDIR  := $(shell pwd)
