1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
if GMP
lib_LTLIBRARIES += libcddgmp.la
pkginclude_HEADERS += \
cdd_f.h \
cddmp_f.h \
cddtypes_f.h
libcddgmp_la_SOURCES = $(libcdd_la_SOURCES)
libcddgmp_la_CPPFLAGS = -DGMPRATIONAL
libcddgmp_la_LDFLAGS = $(AM_LDFLAGS) -lgmp
# do not ship generated source files
nodist_libcddgmp_la_SOURCES = \
cddcore_f.c \
cddlp_f.c \
cddmp_f.c \
cddio_f.c \
cddlib_f.c \
cddproj_f.c
# Since the _f.h and _f.c are autogenerated, we need them to be generated
# before any other compilation takes place.
BUILT_SOURCES = cdd_f.h cddmp_f.h cddtypes_f.h $(nodist_libcddgmp_la_SOURCES)
CLEANFILES = $(BUILT_SOURCES)
# The _f.h and _f.c files are generated from the .h and .c files by the
# following sed/awk script.
define SED_GMP
sed -e 's/dd_/ddf_/g' \
-e 's/cddf_/cdd_/g' \
-e 's/mytype/myfloat/g' \
-e 's/#include "cdd.h"/#include "cdd_f.h"/' \
-e 's/#include "cddtypes.h"/#include "cddtypes_f.h"/' \
-e 's/#include "cddmp.h"/#include "cddmp_f.h"/' \
-e 's/__CDD_H/__CDD_HF/' \
-e 's/__CDD_HFF/__CDD_HF/' \
-e 's/__CDDMP_H/_CDDMP_HF/' \
-e 's/__CDDTYPES_H/_CDDTYPES_HF/' \
-e 's/GMPRATIONAL/ddf_GMPRATIONAL/g' \
-e 's/ARITHMETIC/ddf_ARITHMETIC/g' \
-e 's/CDOUBLE/ddf_CDOUBLE/g' \
$< | awk 'BEGIN{print "/* generated automatically from $< */"}1' \
> $@
endef
SUFFIXES = _f.h _f.c
# A rule to create a _f.h from a .h
.h_f.h:
$(SED_GMP)
# A rule to create a _f.c from a .c
.c_f.c:
$(SED_GMP)
endif
|