EFL 1.7 svn doobies
[profile/ivi/eina.git] / src / lib / Makefile.am
1 MAINTAINERCLEANFILES = Makefile.in
2
3 AM_CPPFLAGS = \
4 -I$(top_srcdir)/src/include \
5 -I$(top_builddir)/src/include \
6 -DPACKAGE_BIN_DIR=\"$(bindir)\" \
7 -DPACKAGE_LIB_DIR=\"$(libdir)\" \
8 -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" \
9 @EFL_EINA_BUILD@ \
10 @EFL_PTHREAD_CFLAGS@ \
11 @EINA_CFLAGS@ \
12 @VALGRIND_CFLAGS@
13
14 base_sources = \
15 eina_accessor.c \
16 eina_array.c \
17 eina_benchmark.c \
18 eina_binbuf.c \
19 eina_binshare.c \
20 eina_convert.c \
21 eina_counter.c \
22 eina_cpu.c \
23 eina_error.c \
24 eina_fp.c \
25 eina_hamster.c \
26 eina_hash.c \
27 eina_inarray.c \
28 eina_inlist.c \
29 eina_iterator.c \
30 eina_lalloc.c \
31 eina_list.c \
32 eina_log.c \
33 eina_magic.c \
34 eina_main.c \
35 eina_matrixsparse.c \
36 eina_mempool.c \
37 eina_mmap.c \
38 eina_module.c \
39 eina_prefix.c \
40 eina_quadtree.c \
41 eina_rbtree.c \
42 eina_rectangle.c \
43 eina_safety_checks.c \
44 eina_sched.c \
45 eina_share_common.c \
46 eina_simple_xml_parser.c \
47 eina_str.c \
48 eina_strbuf.c \
49 eina_strbuf_common.c \
50 eina_stringshare.c \
51 eina_tiler.c \
52 eina_unicode.c \
53 eina_ustrbuf.c \
54 eina_ustringshare.c \
55 eina_value.c \
56 eina_xattr.c
57
58 # Will be back for developper after 1.2
59 # eina_model.c \
60 # eina_object.c
61
62 if EINA_HAVE_WIN32
63 base_sources += eina_file_win32.c
64 else
65 base_sources += eina_file.c
66 endif
67
68 EXTRA_DIST = \
69 eina_share_common.h \
70 eina_private.h \
71 eina_strbuf_common.h \
72 eina_strbuf_template_c.x \
73 eina_binbuf_template_c.x
74
75
76
77 if EINA_STATIC_BUILD_BUDDY
78 base_sources += $(top_srcdir)/src/modules/mp/buddy/eina_buddy.c
79 endif
80
81 if EINA_STATIC_BUILD_CHAINED_POOL
82 base_sources += $(top_srcdir)/src/modules/mp/chained_pool/eina_chained_mempool.c
83 endif
84
85 if EINA_STATIC_BUILD_EMEMOA_FIXED
86 base_sources += $(top_srcdir)/src/modules/mp/ememoa_fixed/eina_ememoa_fixed.c
87 endif
88
89 if EINA_STATIC_BUILD_EMEMOA_UNKNOWN
90 base_sources += $(top_srcdir)/src/modules/mp/ememoa_unknown/eina_ememoa_unknown.c
91 endif
92
93 if EINA_STATIC_BUILD_FIXED_BITMAP
94 base_sources += $(top_srcdir)/src/modules/mp/fixed_bitmap/eina_fixed_bitmap.c
95 endif
96
97 if EINA_STATIC_BUILD_ONE_BIG
98 base_sources += $(top_srcdir)/src/modules/mp/one_big/eina_one_big.c
99 endif
100
101 if EINA_STATIC_BUILD_PASS_THROUGH
102 base_sources += $(top_srcdir)/src/modules/mp/pass_through/eina_pass_through.c
103 endif
104
105 lib_LTLIBRARIES = libeina.la
106
107 if EINA_AMALGAMATION
108 nodist_libeina_la_SOURCES = eina_amalgamation.c
109
110 eina_amalgamation.c: $(base_sources) Makefile
111         -rm -f eina_amalgamation.c
112
113         @echo "#ifdef HAVE_CONFIG_H" >> eina_amalgamation.c
114         @echo "#include \"config.h\"" >> eina_amalgamation.c
115         @echo "#endif" >> eina_amalgamation.c
116
117         @echo "#ifdef HAVE_ALLOCA_H" >> eina_amalgamation.c
118         @echo "# include <alloca.h>" >> eina_amalgamation.c
119         @echo "#elif defined __GNUC__" >> eina_amalgamation.c
120         @echo "# define alloca __builtin_alloca" >> eina_amalgamation.c
121         @echo "#elif defined _AIX" >> eina_amalgamation.c
122         @echo "# define alloca __alloca" >> eina_amalgamation.c
123         @echo "#elif defined _MSC_VER" >> eina_amalgamation.c
124         @echo "# include <malloc.h>" >> eina_amalgamation.c
125         @echo "# define alloca _alloca" >> eina_amalgamation.c
126         @echo "#else" >> eina_amalgamation.c
127         @echo "# include <stddef.h>" >> eina_amalgamation.c
128         @echo "# ifdef __cplusplus" >> eina_amalgamation.c
129         @echo "#extern \"C\"" >> eina_amalgamation.c
130         @echo "# endif" >> eina_amalgamation.c
131         @echo "#void *alloca (size_t);" >> eina_amalgamation.c
132         @echo "#endif" >> eina_amalgamation.c
133
134         @echo "#include <stdio.h>" >> eina_amalgamation.c
135         @echo "#include <stdlib.h>" >> eina_amalgamation.c
136         @echo "#include <string.h>" >> eina_amalgamation.c
137         @echo "#ifdef HAVE_DLOPEN" >> eina_amalgamation.c
138         @echo "# include <dlfcn.h>" >> eina_amalgamation.c
139         @echo "#endif" >> eina_amalgamation.c
140         @echo "#include <sys/types.h>" >> eina_amalgamation.c
141         @echo "#ifdef HAVE_DIRENT_H" >> eina_amalgamation.c
142         @echo "# include <dirent.h>" >> eina_amalgamation.c
143         @echo "#endif" >> eina_amalgamation.c
144         @echo "#include <assert.h>" >> eina_amalgamation.c
145         @echo "#include <errno.h>" >> eina_amalgamation.c
146         @echo "#include <fnmatch.h>" >> eina_amalgamation.c
147         @echo "#include <fcntl.h>" >> eina_amalgamation.c
148
149         @echo "#ifdef HAVE_EVIL" >> eina_amalgamation.c
150         @echo "# include <Evil.h>" >> eina_amalgamation.c
151         @echo "#endif" >> eina_amalgamation.c
152
153         @echo "#include \"eina_config.h\"" >> eina_amalgamation.c
154         @echo "#include \"eina_private.h\"" >> eina_amalgamation.c
155         @echo "#include \"eina_safety_checks.h\"" >> eina_amalgamation.c
156         @echo "#include \"Eina.h\"" >> eina_amalgamation.c
157         @echo "#include \"eina_strbuf_common.h\"" >> eina_amalgamation.c
158         @echo "#include \"eina_share_common.h\"" >> eina_amalgamation.c
159
160         @for f in $(base_sources); do \
161            if [ `echo $$f | sed -e 's/^...\(.\).*/\1/'` != '/' ]; then \
162                   file="$(srcdir)/$$f" ; \
163            else \
164                   file="$$f" ; \
165            fi ; \
166            echo "/* file: $$file */" >> eina_amalgamation.c; \
167            grep -v -e '^# *include \+.\(config\|eina_[a-z_]\+\|Evil\|stdio\|stdlib\|string\|dlfcn\|dirent\|assert\|errno\|fnmatch\)[.]h.*' $$file >> eina_amalgamation.c; \
168         done
169         @echo "eina_amalgamation.c generated"
170
171 else
172 libeina_la_SOURCES = $(base_sources)
173 endif
174
175 libeina_la_LIBADD = @EINA_LIBS@ -lm
176 libeina_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ @release_info@ @EFL_PTHREAD_LIBS@
177
178 clean-local:
179         rm -rf *.gcno eina_amalgamation.c