File: Makefile.gmp.am

package info (click to toggle)
cddlib 094m-1.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,276 kB
  • sloc: ansic: 9,308; makefile: 95; sh: 1
file content (57 lines) | stat: -rw-r--r-- 1,416 bytes parent folder | download | duplicates (2)
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