ttls: return channel bindings on half round trip success
[freeradius.git] / Make.inc.in
index 110f925..6950044 100644 (file)
@@ -21,18 +21,26 @@ includedir  = @includedir@
 raddbdir       = @raddbdir@
 radacctdir     = @radacctdir@
 top_builddir   = @abs_top_builddir@
+top_build_prefix=@abs_top_builddir@/
 top_srcdir     = @abs_top_srcdir@
+datarootdir    = @datarootdir@
 
 MAKE           = @MAKE@
+
+# Makeflags set within the makefile appear to be additive and override
+# flags set on the command line and the environmental variables
+MAKEFLAGS      = @MAKEFLAGS@
+
 CC             = @CC@
 RANLIB         = @RANLIB@
-INCLUDE                = 
-CFLAGS         = $(INCLUDE) @CFLAGS@
+IMACROS                = -imacros ${top_srcdir}/src/freeradius-devel/autoconf.h -imacros ${top_srcdir}/src/freeradius-devel/features.h
+INCLUDE                = -I${top_srcdir} -I${top_srcdir}/src
+CFLAGS         = $(IMACROS) $(INCLUDE) -fno-strict-aliasing @CFLAGS@
 CPPFLAGS       = @CPPFLAGS@
 LIBPREFIX      = @LIBPREFIX@
-EXEEXT         = @EXEEXT@ 
+EXEEXT         = @EXEEXT@
 
-LIBTOOL                = @LIBTOOL@
+LIBTOOL                = JLIBTOOL
 ACLOCAL                = @ACLOCAL@
 AUTOCONF       = @AUTOCONF@
 AUTOHEADER     = @AUTOHEADER@
@@ -51,30 +59,95 @@ RADDBDIR    = ${raddbdir}
 RUNDIR         = ${localstatedir}/run/radiusd
 SBINDIR                = ${sbindir}
 RADIR          = ${radacctdir}
+LIBRADIUS      = $(top_builddir)/src/lib/$(LIBPREFIX)freeradius-radius.la -l talloc
 
-LIBLTDL                = @LIBLTDL@
-INCLTDL                = @INCLTDL@
-LTDL_SUBDIRS   = @LTDL_SUBDIRS@
+#USE_SHARED_LIBS = @USE_SHARED_LIBS@
+#USE_STATIC_LIBS = @USE_STATIC_LIBS@
 
-USE_SHARED_LIBS        = @USE_SHARED_LIBS@
-USE_STATIC_LIBS = @USE_STATIC_LIBS@
+USE_SHARED_LIBS = yes
+USE_STATIC_LIBS = yes
 STATIC_MODULES = @STATIC_MODULES@
 
-SNMP_INCLUDE   = @SNMP_INCLUDE@
-SNMP_LIBS      = @SNMP_LIBS@
-
 OPENSSL_LIBS   = @OPENSSL_LIBS@
 OPENSSL_INCLUDE = @OPENSSL_INCLUDE@
+CFLAGS         += $(OPENSSL_INCLUDE)
+
+LIBREADLINE    = @LIBREADLINE@
+
+#
+#  Version to use for packaging and other Make related things
+#
+RADIUSD_VERSION_STRING = @RADIUSD_VERSION_STRING@
 
 #
-#  SQL driver defines
+#  This allows dlopen to do runtime checks for version mistmatches
+#  between what it was originally linked with, and the library it's
+#  actually loading.
 #
-SQL_ODBC_LIBS = @ODBC_LIBS@
-SQL_ODBC_INCLUDE = @ODBC_INCLUDE@
+#LDFLAGS += -release=$(RADIUSD_VERSION_STRING)
+
+MODULES                = @MODULES@
+HOSTINFO       = @HOSTINFO@
+
+ifneq ($(WITH_OPENSSL_MD5),)
+LIBRADIUS_WITH_OPENSSL = 1
+CFLAGS += -DWITH_OPENSSL_MD5
+endif
+
+ifneq ($(WITH_OPENSSL_SHA1),)
+LIBRADIUS_WITH_OPENSSL = 1
+CFLAGS += -DWITH_OPENSSL_SHA1
+endif
+
+ifneq ($(LIBRADIUS_WITH_OPENSSL),)
+ifeq ($(OPENSSL_LIBS),)
+$(error OPENSSL_LIBS must be define in order to use WITH_OPENSSL_*)
+else
+LIBRADIUS += $(OPENSSL_LIBS)
+endif
+endif
+
+#  http://clang.llvm.org/StaticAnalysis.html
+#
+#  $ make SCAN=/path/to/checker/ 
+#
+ifneq ($(SCAN),)
+CC             := $(SCAN)/scan-build gcc -DFR_SCAN_BUILD
+LIBTOOL                := 
+endif
+
+#
+#  Portability cruft.  This is for replacing libtroll && libltdl
+#  with gcc and dlopen().
+#
+ifeq "$(USE_SHARED_LIBS)" "yes"
+LINK_MODE.exe  = -export-dynamic
+CFLAGS         += -fPIC
+else
+LINK_MODE.exe  = -static
+endif
+
+ifneq "$(LIBTOOL)" ""
+COMPILE.c      := $(LIBTOOL) --quiet --mode=compile $(CC) 
+LINK.lib       := $(LIBTOOL) --quiet --mode=link $(CC) -rpath $(libdir) -o
+LO             := lo
+LA             := la
+else
+COMPILE.c      := $(CC)
+LO             := o
+
+ifeq "$(USE_SHARED_LIBS)" "yes"
+LINK.lib       := $(CC) -shared -o
+LA             := so
+else
+LINK.lib       := $(AR) cru
+LA             := a
+endif
 
-RADIUSD_MAJOR_VERSION  = @RADIUSD_MAJOR_VERSION@
-RADIUSD_MINOR_VERSION  = @RADIUSD_MINOR_VERSION@
-RADIUSD_VERSION                = @RADIUSD_VERSION@
+endif
 
-MODULES                        = @MODULES@
-HOSTINFO               = @HOSTINFO@
+ifeq "$(LA)" "so"
+ifneq "$(findstring Darwin,$(shell uname -a))" ""
+LA             := dylib
+endif
+endif