Commit aff69360 authored by Ralf Müller's avatar Ralf Müller
Browse files

Added '--enable-all-static' option to configure for an additional complete static binary

parent 57f7076b
......@@ -613,6 +613,8 @@ INCLUDES
CLIBS
CLDFLAGS
FCFLAGS
ENABLE_ALL_STATIC_FALSE
ENABLE_ALL_STATIC_TRUE
subdirs
ENABLE_CDI_LIB
ENABLE_CDI_LIB_FALSE
......@@ -777,6 +779,7 @@ enable_extra
enable_ieg
with_proj
enable_cdi_lib
enable_all_static
'
ac_precious_vars='build_alias
host_alias
......@@ -1423,8 +1426,10 @@ Optional Features:
--enable-service Use the service library [default=yes]
--enable-extra Use the extra library [default=yes]
--enable-ieg Use the ieg library [default=yes]
--enable-cdi-lib build + install a CDI library [default=no] and link
CDO to it |CDO build only|
--enable-cdi-lib build, install and link to a CDI library
[default=no]
--enable-all-static build a completely statically linked CDO binary
[default=no]
 
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
......@@ -17912,19 +17917,24 @@ fi
# How to build CDI into CDI?
INTERNAL_CDI_DIR=libcdi
# At the moment, there are two possible CDI bindings
# (default) linking directly to CDI's object files in ./libcdi/src
# (default) linking directly to CDI's object files, i.e. a libtool
# convenience library
# (--enable-cdi-lib) build and link to a shared CDI library
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for build a separate CDI library and link CDO to it |valid for CDO build only|" >&5
$as_echo_n "checking for build a separate CDI library and link CDO to it |valid for CDO build only|... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for build a separate CDI library and link CDO to it" >&5
$as_echo_n "checking for build a separate CDI library and link CDO to it... " >&6; }
# Check whether --enable-cdi-lib was given.
if test "${enable_cdi_lib+set}" = set; then :
enableval=$enable_cdi_lib; if test "x$enable_cdi_lib" != "xno"; then :
enable_cdi_lib=yes
else
enable_cdi_lib=no
CDO_DISABLE_CDILIB=1
export CDO_DISABLE_CDILIB
fi
else
enable_cdi_lib=no
CDO_DISABLE_CDILIB=1
export CDO_DISABLE_CDILIB
fi
 
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_cdi_lib" >&5
......@@ -17949,6 +17959,31 @@ fi
# scan libcdi for CDI as a subproject
subdirs="$subdirs libcdi"
 
# ----------------------------------------------------------------------
# Build a static CDO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for building an additional static CDO binary" >&5
$as_echo_n "checking for building an additional static CDO binary... " >&6; }
# Check whether --enable-all-static was given.
if test "${enable_all_static+set}" = set; then :
enableval=$enable_all_static; if test "x$enable_all_static" != "xno"; then :
enable_all_static=yes
else
enable_all_static=no
fi
else
enable_all_static=no
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_all_static" >&5
$as_echo "$enable_all_static" >&6; }
if test x$enable_all_static = 'xyes'; then
ENABLE_ALL_STATIC_TRUE=
ENABLE_ALL_STATIC_FALSE='#'
else
ENABLE_ALL_STATIC_TRUE='#'
ENABLE_ALL_STATIC_FALSE=
fi
 
# ----------------------------------------------------------------------
 
......@@ -18082,6 +18117,10 @@ if test -z "${ENABLE_CDI_LIB_TRUE}" && test -z "${ENABLE_CDI_LIB_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_CDI_LIB\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ENABLE_ALL_STATIC_TRUE}" && test -z "${ENABLE_ALL_STATIC_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_ALL_STATIC\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
 
: ${CONFIG_STATUS=./config.status}
ac_write_fail=0
......
......@@ -283,14 +283,20 @@ AC_ARG_WITH([proj],
# How to build CDI into CDI?
INTERNAL_CDI_DIR=libcdi
# At the moment, there are two possible CDI bindings
# (default) linking directly to CDI's object files in ./libcdi/src
# (default) linking directly to CDI's object files, i.e. a libtool
# convenience library
# (--enable-cdi-lib) build and link to a shared CDI library
AC_MSG_CHECKING([for build a separate CDI library and link CDO to it |valid for CDO build only|])
AC_MSG_CHECKING([for build a separate CDI library and link CDO to it])
AC_ARG_ENABLE([cdi-lib],
[AS_HELP_STRING([--enable-cdi-lib],[build + install a CDI library [default=no] and link CDO to it |CDO build only|])],
[AS_HELP_STRING([--enable-cdi-lib],[build, install and link to a CDI library [default=no]])],
[AS_IF([test "x$enable_cdi_lib" != "xno"],
[enable_cdi_lib=yes],
[enable_cdi_lib=no])],[enable_cdi_lib=no])
[enable_cdi_lib=no
CDO_DISABLE_CDILIB=1
export CDO_DISABLE_CDILIB])],
[enable_cdi_lib=no
CDO_DISABLE_CDILIB=1
export CDO_DISABLE_CDILIB])
AC_MSG_RESULT([$enable_cdi_lib])
# save CDI binding mode for later automake use
AM_CONDITIONAL([ENABLE_CDI_LIB],[test x$enable_cdi_lib = 'xyes'])
......@@ -298,4 +304,15 @@ AM_CONDITIONAL([ENABLE_CDI_LIB],[test x$enable_cdi_lib = 'xyes'])
AS_IF([test x$enable_cdi_lib = 'xno'],[AC_SUBST([ENABLE_CDI_LIB],[false])],[AC_SUBST([ENABLE_CDI_LIB],[true])])
# scan libcdi for CDI as a subproject
AC_CONFIG_SUBDIRS([libcdi])
# ----------------------------------------------------------------------
# Build a static CDO
AC_MSG_CHECKING([for building an additional static CDO binary])
AC_ARG_ENABLE([all-static],
[AS_HELP_STRING([--enable-all-static],[build a completely statically linked CDO binary [default=no]])],
[AS_IF([test "x$enable_all_static" != "xno"],
[enable_all_static=yes],
[enable_all_static=no])],
[enable_all_static=no])
AC_MSG_RESULT([$enable_all_static])
AM_CONDITIONAL([ENABLE_ALL_STATIC],[test x$enable_all_static = 'xyes'])
])
## Process this file with automake to produce Makefile.in
#
bin_PROGRAMS = cdo
if ENABLE_ALL_STATIC
bin_PROGRAMS += cdo_static
endif
#
cdo_SOURCES = cdo.c
cdo_SOURCES += Arith.c \
......@@ -252,67 +255,20 @@ cdo_SOURCES += Arith.c \
vinterp.h \
zaxis.c
cdo_LDADD =
cdo_CPPFLAGS =
cdo_CPPFLAGS += -I$(top_srcdir)/libcdi/src
if ENABLE_CDI_LIB
cdo_LDADD += $(top_builddir)/libcdi/src/libcdi.la
else
# cdo_LDADD += $(top_builddir)/libcdi/src/basetime.lo \
# $(top_builddir)/libcdi/src/binary.lo \
# $(top_builddir)/libcdi/src/calendar.lo \
# $(top_builddir)/libcdi/src/cdf_int.lo \
# $(top_builddir)/libcdi/src/cdf.lo \
# $(top_builddir)/libcdi/src/cdi_error.lo \
# $(top_builddir)/libcdi/src/cdi_util.lo \
# $(top_builddir)/libcdi/src/cgribexlib.lo \
# $(top_builddir)/libcdi/src/dmemory.lo \
# $(top_builddir)/libcdi/src/error.lo \
# $(top_builddir)/libcdi/src/extralib.lo \
# $(top_builddir)/libcdi/src/file.lo \
# $(top_builddir)/libcdi/src/gaussgrid.lo \
# $(top_builddir)/libcdi/src/gribapi.lo \
# $(top_builddir)/libcdi/src/grid.lo \
# $(top_builddir)/libcdi/src/ieglib.lo \
# $(top_builddir)/libcdi/src/institution.lo \
# $(top_builddir)/libcdi/src/model.lo \
# $(top_builddir)/libcdi/src/servicelib.lo \
# $(top_builddir)/libcdi/src/stream_cdf.lo \
# $(top_builddir)/libcdi/src/stream_cgribex.lo \
# $(top_builddir)/libcdi/src/stream_ext.lo \
# $(top_builddir)/libcdi/src/stream_grb.lo \
# $(top_builddir)/libcdi/src/stream_gribapi.lo \
# $(top_builddir)/libcdi/src/stream_history.lo \
# $(top_builddir)/libcdi/src/stream_ieg.lo \
# $(top_builddir)/libcdi/src/stream_int.lo \
# $(top_builddir)/libcdi/src/stream.lo \
# $(top_builddir)/libcdi/src/stream_record.lo \
# $(top_builddir)/libcdi/src/stream_srv.lo \
# $(top_builddir)/libcdi/src/stream_var.lo \
# $(top_builddir)/libcdi/src/swap.lo \
# $(top_builddir)/libcdi/src/table.lo \
# $(top_builddir)/libcdi/src/taxis.lo \
# $(top_builddir)/libcdi/src/timebase.lo \
# $(top_builddir)/libcdi/src/tsteps.lo \
# $(top_builddir)/libcdi/src/util.lo \
# $(top_builddir)/libcdi/src/varscan.lo \
# $(top_builddir)/libcdi/src/version.lo \
# $(top_builddir)/libcdi/src/vlist.lo \
# $(top_builddir)/libcdi/src/vlist_att.lo \
# $(top_builddir)/libcdi/src/vlist_var.lo \
# $(top_builddir)/libcdi/src/zaxis.lo
cdo_LDADD += $(filter-out $(top_builddir)/libcdi/src/cdiFortran.lo,$(wildcard $(top_builddir)/libcdi/src/*.lo))
endif
cdo_LDADD += @NETCDF_LDFLAGS@ \
cdo_CPPFLAGS = -I$(top_srcdir)/libcdi/src
cdo_LDADD = $(top_builddir)/libcdi/src/libcdi.la @LIBS@
cdo_LDFLAGS = @LDFLAGS@ \
@NETCDF_LDFLAGS@ \
@HDF5_LDFLAGS@ \
@GRIB_API_LDFLAGS@ \
@ZLIB_LDFLAGS@ \
@SZLIB_LDFLAGS@ \
@PROJ_LDFLAGS@ \
@LDFLAGS@ \
@LIBS@
@PROJ_LDFLAGS@
cdo_static_SOURCES = $(cdo_SOURCES)
cdo_static_CPPFLAGS = $(cdo_CPPFLAGS)
cdo_static_LDADD = $(cdo_LDADD)
cdo_static_LDFLAGS = -all-static $(cdo_LDFLAGS)
noinst_PROGRAMS = cdotest
cdotest_SOURCES = cdo_int.h \
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment