
# This makefile includes all default values used to configure AWS. You can
# update variables here or set the corresponding variable on the command
# line. You should not have do change the main makefile.
#
# IMPORTANT: each time you change the definitions here make sure you run
#            $ make setup

##############################################################################
# TARGET platform
#
# TARGET is the name for gprbuild --target option
#
TARGET = $(shell gcc -dumpmachine)

##############################################################################
# AWS will be installed under $(prefix). Update this variable to point to
# the install directory. By default, it is set to the current GNAT root
# directory to have AWS project files automatically available.
#

ifeq ($(TARGET), $(shell gcc -dumpmachine))
prefix = $(dir $(shell which gnatls))..
else
prefix = $(dir $(shell which $(TARGET)-gnatls))..
endif

##############################################################################
# Set to true if the AWS shared runtime must be built. If ENABLE_SHARED is
# set to false only the static version is built. The default value is true if
# the platform supports shared libraries.
#
# Note that all dependents libraries (like XML/Ada) must have been compiled
# and installed as shared libraries if this option is set.
#
# ENABLE_SHARED = [true|false]
#
ENABLE_SHARED=$(shell $(GNAT) make -c -q -p \
                -XTARGET=$(TARGET) -XPRJ_TARGET=$(PRJ_TARGET) \
		-Pconfig/setup/test_shared 2>/dev/null && echo "true")

##############################################################################
# Specify the default library type to setup for the installed AWS project.
#
# DEFAULT_LIBRARY_TYPE = [static|relocatable]
#
DEFAULT_LIBRARY_TYPE = static

##############################################################################
# XMLADA optional, needed if you want to build SOAP's AWS support. Set XMLADA
# to true to activate XML/Ada support, you must also set ADA_PROJECT_PATH
# to point to the XML/Ada project files if not installed in the standard
# location.
#
# XMLADA = [true/false]
#
ifeq ($(shell gnat ls -Pxmlada 2>&1 | grep 'project file .* not found'),)
XMLADA = true
else
XMLADA = false
endif

##############################################################################
# ASIS optional, needed if you want to build ada2wsdl tool. This tool can be
# used to create a WSDL document from an Ada spec. Set ASIS to true to
# activate ASIS support. You must also set ADA_PROJECT_PATH to point to the
# ASIS project files if not installed in the standard location.
#
# If you activate ASIS you also need to activate XMLADA above.
#
# ASIS = [true|false]
#
ifeq ($(shell gnat ls -Pasis 2>&1 | grep 'project file .* not found'),)
ASIS = true
else
ASIS = false
endif

##############################################################################
# Zlib mandatory, check if zlib is already installed and recent enought,
# otherwise compile the one coming with AWS.
#
# ZLIB = [true|false]
#
ZLIB	= $(shell $(GNAT) make -q -p \
                  -XTARGET=$(TARGET) -XPRJ_TARGET=$(PRJ_TARGET) \
                  -Pconfig/setup/test_zlib 2>/dev/null \
                  && .build/$(TARGET)/setup/zobj/mzlib \
		  && echo "true")

##############################################################################
# NETLIB, optional. "gnat" option works on GNAT 20 version ans later. If you
# need backward compartibility you can choose either "ipv4" or "ipv6". "ipv4"
# based on GNAT.Sockets functionality without using new functions. "ipv6"
# option ipmlementing IPv6 functions without relation to GNAT.Sockets.
#
# NETLIB = [gnat|ipv6|ipv4]
#
NETLIB	= gnat

##############################################################################
# AWS supports SSL (Secure Socket Layer). To build AWS's with SSL support
# you need to set SOCKET to openssl or gnutls, in this case you must have
# installed the corresponding SSL library on your computer.
#
# SOCKET = [std|openssl|gnutls]
#
SOCKET	= std

##############################################################################
# AWS provides a binding to the LDAP API. This binding will use the standard
# LDAP DLL provided with Windows OS. On GNU/Linux you need to install OpenLDAP
# if it is not already installed. If LDAP is installed on your system you can
# set LDAP=true below.
#
# LDAP = [true|false]
#
LDAP	= false

##############################################################################
# To activate the debug mode just uncomment the variable below. This will
# build AWS with debug information and will output more build information.
#
# DEBUG = [true|false]
#
DEBUG	= true

##############################################################################
# Number of parallel compilations to do.
#
PROCESSORS	= 0

##############################################################################
# Tools used by AWS
#
CP	 	  = cp -p
GNAT		  = gnat
GPRBUILD	  = gprbuild
GPRCLEAN	  = gprclean
GPRINSTALL	  = gprinstall
GPS		  = gps
MKDIR	 	  = mkdir -p
PYTHON            = python
RM	 	  = rm
SED	 	  = sed

##############################################################################
# Load current setup if any
#
-include makefile.setup
#  user setup

##############################################################################
# Compute PRJ_TARGET which is a simplified set for the TARGET value.
# It can be UNIX, Darwin, Windows_NT and vxworks.
#
ifeq ($(strip $(findstring vxworks, $(TARGET))),vxworks)
   PRJ_TARGET=vxworks
else
ifeq ($(strip $(findstring mingw32, $(TARGET))),mingw32)
   PRJ_TARGET=Windows_NT
else
ifeq ($(strip $(findstring darwin, $(TARGET))),darwin)
   PRJ_TARGET=Darwin
else
ifeq ($(strip $(findstring freebsd, $(TARGET))),freebsd)
   PRJ_TARGET=freebsd
else
   PRJ_TARGET=UNIX
endif
endif
endif
endif

OTHER_LIBRARY_TYPE	= \
	$(if $(filter-out static,$(DEFAULT_LIBRARY_TYPE)),static,relocatable)

ifeq ($(TARGET), $(shell gcc -dumpmachine))
   IS_CROSS=false
   GCC= gcc
else
   IS_CROSS=true
   GCC = $(TARGET)-gcc
endif
