Use dlsym to load all filters
[metaproxy-moved-to-github.git] / src / Makefile.am
1 ## This file is part of Metaproxy
2 ## Copyright (C) 2005-2013 Index Data
3
4 MAINTAINERCLEANFILES = Makefile.in config.in config.hpp
5
6 DISTCLEANFILES = metaproxy-config
7
8 AM_CXXFLAGS = $(BOOST_CPPFLAGS)
9
10 AM_CPPFLAGS = -I$(top_srcdir)/include $(USEMARCONINC)
11
12 bin_SCRIPTS = metaproxy-config
13
14 filter_src = \
15         filter_auth_simple.cpp filter_auth_simple.hpp \
16         filter_backend_test.cpp filter_backend_test.hpp \
17         filter_bounce.cpp filter_bounce.hpp \
18         filter_cgi.cpp filter_cgi.hpp \
19         filter_cql_to_rpn.cpp filter_cql_to_rpn.hpp \
20         filter_http_client.cpp filter_http_client.hpp \
21         filter_http_file.cpp filter_http_file.hpp \
22         filter_http_rewrite1.cpp filter_http_rewrite1.hpp \
23         filter_limit.cpp filter_limit.hpp \
24         filter_load_balance.cpp filter_load_balance.hpp \
25         filter_log.cpp filter_log.hpp \
26         filter_multi.cpp filter_multi.hpp \
27         filter_query_rewrite.cpp filter_query_rewrite.hpp \
28         filter_record_transform.cpp filter_record_transform.hpp \
29         filter_session_shared.cpp filter_session_shared.hpp \
30         filter_sort.cpp filter_sort.hpp \
31         filter_sru_to_z3950.cpp  filter_sru_to_z3950.hpp \
32         filter_template.cpp filter_template.hpp \
33         filter_virt_db.cpp filter_virt_db.hpp \
34         filter_z3950_client.cpp filter_z3950_client.hpp \
35         filter_zeerex_explain.cpp  filter_zeerex_explain.hpp \
36         filter_zoom.cpp filter_zoom.hpp \
37         filter_frontend_net.cpp filter_frontend_net.hpp
38
39 lib_LTLIBRARIES = libmetaproxy.la
40 libmetaproxy_la_LDFLAGS = -version-info 4:0:0 -export-dynamic
41
42 libmetaproxy_la_SOURCES = \
43         factory_filter.cpp factory_filter.hpp \
44         factory_static.cpp factory_static.hpp \
45         filter.cpp \
46         gduutil.cpp gduutil.hpp \
47         origin.cpp \
48         package.cpp \
49         pipe.cpp pipe.hpp \
50         plainfile.cpp \
51         router_chain.hpp router_chain.cpp \
52         router_flexml.hpp router_flexml.cpp \
53         session.cpp \
54         sru_util.cpp sru_util.hpp \
55         thread_pool_observer.cpp thread_pool_observer.hpp \
56         torus.cpp torus.hpp \
57         url_recipe.cpp \
58         util.cpp \
59         xmlutil.cpp
60
61 libmetaproxy_la_LIBADD = $(YAZPPLALIB) \
62         $(BOOST_LIB) $(BOOST_SYSTEM_LIB) $(BOOST_THREAD_LIB) \
63         $(BOOST_REGEX_LIB)
64
65 metaproxy_LDADD = libmetaproxy.la $(YAZPPLALIB) \
66         $(BOOST_LIB) $(BOOST_SYSTEM_LIB) $(BOOST_THREAD_LIB) \
67         $(BOOST_REGEX_LIB) $(USEMARCONLALIB)
68
69 LDADD = $(metaproxy_LDADD) $(BOOST_TEST_LIB)
70 AM_LDFLAGS = -export-dynamic
71
72 bin_PROGRAMS = metaproxy
73 noinst_PROGRAMS = tstdl
74
75 tstdl_SOURCES = tstdl.cpp
76 metaproxy_SOURCES = metaproxy_prog.cpp $(filter_src)
77
78 # Rules for dl programs
79 pkglib_LTLIBRARIES = metaproxy_filter_dl.la
80
81 metaproxy_filter_dl_la_SOURCES = filter_dl.cpp
82 metaproxy_filter_dl_la_LDFLAGS = -rpath $(pkglibdir) -module -avoid-version
83 metaproxy_filter_dl_la_LIBADD = libmetaproxy.la
84
85 # Rules for test programs..
86
87 check_PROGRAMS = \
88         test_package1 \
89         test_pipe \
90         test_filter1 test_filter2 \
91         test_session1 test_session2 \
92         test_thread_pool_observer \
93         test_boost_threads \
94         test_filter_auth_simple \
95         test_filter_factory \
96         test_filter_frontend_net \
97         test_filter_log \
98         test_filter_multi \
99         test_filter_query_rewrite \
100         test_filter_z3950_client \
101         test_filter_backend_test \
102         test_filter_bounce \
103         test_filter_record_transform \
104         test_filter_sru_to_z3950 \
105         test_filter_virt_db \
106         test_ses_map \
107         test_router_flexml \
108         test_xmlutil
109
110 TESTS=$(check_PROGRAMS)
111
112 test_package1_SOURCES=test_package1.cpp
113 test_pipe_SOURCES=test_pipe.cpp
114 test_filter1_SOURCES=test_filter1.cpp
115 test_filter2_SOURCES=test_filter2.cpp
116 test_session1_SOURCES=test_session1.cpp
117 test_session2_SOURCES=test_session2.cpp
118 test_boost_threads_SOURCES=test_boost_threads.cpp
119 test_thread_pool_observer_SOURCES = test_thread_pool_observer.cpp
120 test_filter_auth_simple_SOURCES = test_filter_auth_simple.cpp $(filter_src)
121 test_filter_factory_SOURCES = test_filter_factory.cpp
122 test_filter_frontend_net_SOURCES = test_filter_frontend_net.cpp $(filter_src)
123 test_filter_log_SOURCES = test_filter_log.cpp $(filter_src)
124 test_filter_multi_SOURCES = test_filter_multi.cpp $(filter_src)
125 test_filter_query_rewrite_SOURCES = test_filter_query_rewrite.cpp $(filter_src)
126 test_filter_z3950_client_SOURCES = test_filter_z3950_client.cpp $(filter_src)
127 test_filter_backend_test_SOURCES = test_filter_backend_test.cpp $(filter_src)
128 test_filter_bounce_SOURCES = test_filter_bounce.cpp $(filter_src)
129 test_filter_record_transform_SOURCES = test_filter_record_transform.cpp \
130         $(filter_src)
131 test_filter_sru_to_z3950_SOURCES = test_filter_sru_to_z3950.cpp $(filter_src)
132 test_filter_virt_db_SOURCES = test_filter_virt_db.cpp $(filter_src)
133 test_ses_map_SOURCES = test_ses_map.cpp
134 test_router_flexml_SOURCES = test_router_flexml.cpp $(filter_src)
135 test_xmlutil_SOURCES = test_xmlutil.cpp
136
137 # doxygen target
138 dox:
139         (cd $(top_srcdir) ; make dox) 
140
141 showdox:
142         (cd $(top_srcdir) ; make showdox)