1include $(top_srcdir)/win32/ltrc.inc
2
3if ENABLE_ZLIB
4VDFORMAT=XML
5else
6VDFORMAT=GZIP
7endif
8
9do_subst = $(SED) \
10	   -e 's,[@]bindir[@],$(bindir),g' \
11	   -e 's,[@]CVCDIR[@],$(CVCDIR),g' \
12	   -e 's,[@]PACKAGE[@],$(PACKAGE),g' \
13	   -e 's,[@]PACKAGE_BUGREPORT[@],$(PACKAGE_BUGREPORT),g' \
14	   -e 's,[@]PACKAGE_NAME[@],$(PACKAGE_NAME),g' \
15	   -e 's,[@]PACKAGE_TARNAME[@],$(PACKAGE_TARNAME),g' \
16	   -e 's,[@]PACKAGE_URL[@],$(PACKAGE_URL),g' \
17	   -e 's,[@]PACKAGE_SUMMARY[@],$(PACKAGE_SUMMARY),g' \
18	   -e 's,[@]PACKAGE_VERSION[@],"$(PACKAGE_VERSION)",g' \
19	   -e 's,[@]DEFAULT_PKCS11_PROVIDER[@],"$(DEFAULT_PKCS11_PROVIDER)",g' \
20	   -e 's,[@]VDFORMAT[@],$(VDFORMAT),g' \
21	   -e 's,[@]X509DIR[@],$(X509DIR),g'
22
23MAINTAINERCLEANFILES = $(srcdir)/Makefile.in $(srcdir)/versioninfo-tools.rc $(srcdir)/versioninfo-opensc-notify.rc
24EXTRA_DIST = Makefile.mak versioninfo-tools.rc.in versioninfo-opensc-notify.rc.in goid-tool.ggo.in npa-tool.ggo.in opensc-notify.ggo.in egk-tool.ggo.in opensc-asn1.ggo.in org.opensc.notify.desktop.in exe.manifest pkcs11-register.desktop.in org.opensc-project.mac.pkcs11-register.plist.in org.opensc-project.mac.opensc-notify.plist.in
25
26noinst_HEADERS = util.h fread_to_eof.h \
27	egk-tool-cmdline.h goid-tool-cmdline.h npa-tool-cmdline.h \
28	opensc-asn1-cmdline.h opensc-notify-cmdline.h pkcs11-register-cmdline.h
29noinst_PROGRAMS = sceac-example
30bin_PROGRAMS = opensc-tool opensc-explorer opensc-notify \
31	pkcs15-tool pkcs15-crypt pkcs11-tool pkcs11-register \
32	cardos-tool eidenv openpgp-tool iasecc-tool egk-tool opensc-asn1 goid-tool
33if ENABLE_OPENSSL
34bin_PROGRAMS += cryptoflex-tool pkcs15-init netkey-tool piv-tool \
35	westcos-tool sc-hsm-tool dnie-tool gids-tool npa-tool
36endif
37
38# compile with $(PTHREAD_CFLAGS) to allow debugging with gdb
39AM_CFLAGS = $(OPTIONAL_OPENSSL_CFLAGS) $(OPTIONAL_READLINE_CFLAGS) $(PTHREAD_CFLAGS)
40AM_CPPFLAGS = -I$(top_srcdir)/src -D'DEFAULT_PKCS11_PROVIDER="$(DEFAULT_PKCS11_PROVIDER)"' -D'DEFAULT_ONEPIN_PKCS11_PROVIDER="$(DEFAULT_ONEPIN_PKCS11_PROVIDER)"'
41LIBS = \
42	$(top_builddir)/src/libopensc/libopensc.la \
43	$(top_builddir)/src/common/libscdl.la \
44	$(top_builddir)/src/common/libcompat.la
45
46sceac_example_SOURCES = sceac-example.c
47sceac_example_LDADD = $(top_builddir)/src/libopensc/libopensc.la $(OPENPACE_LIBS)
48sceac_example_CFLAGS = -I$(top_srcdir)/src $(OPENPACE_CFLAGS)
49
50opensc_tool_SOURCES = opensc-tool.c util.c
51piv_tool_SOURCES = piv-tool.c util.c
52piv_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
53opensc_explorer_SOURCES = opensc-explorer.c util.c
54opensc_explorer_LDADD = $(OPTIONAL_READLINE_LIBS)
55pkcs15_tool_SOURCES = pkcs15-tool.c util.c ../pkcs11/pkcs11-display.c ../pkcs11/pkcs11-display.h
56pkcs15_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
57pkcs11_tool_SOURCES = pkcs11-tool.c util.c
58pkcs11_tool_CFLAGS = $(OPTIONAL_OPENSSL_CFLAGS) $(PTHREAD_CFLAGS)
59pkcs11_tool_LDADD = \
60	$(top_builddir)/src/common/libpkcs11.la \
61	$(OPTIONAL_OPENSSL_LIBS) $(PTHREAD_CFLAGS)
62if ENABLE_SHARED
63else
64pkcs11_tool_LDADD += \
65	$(top_builddir)/src/pkcs11/libopensc-pkcs11.la
66endif
67pkcs15_crypt_SOURCES = pkcs15-crypt.c util.c
68pkcs15_crypt_LDADD = $(OPTIONAL_OPENSSL_LIBS)
69cryptoflex_tool_SOURCES = cryptoflex-tool.c util.c
70cryptoflex_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
71pkcs15_init_SOURCES = pkcs15-init.c util.c
72pkcs15_init_LDADD = $(OPTIONAL_OPENSSL_LIBS)
73cardos_tool_SOURCES = cardos-tool.c util.c
74cardos_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
75eidenv_SOURCES = eidenv.c util.c
76netkey_tool_SOURCES = netkey-tool.c
77netkey_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
78westcos_tool_SOURCES = westcos-tool.c util.c
79westcos_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
80openpgp_tool_SOURCES = openpgp-tool.c util.c
81openpgp_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
82iasecc_tool_SOURCES = iasecc-tool.c util.c
83iasecc_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
84sc_hsm_tool_SOURCES = sc-hsm-tool.c util.c
85sc_hsm_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
86dnie_tool_SOURCES = dnie-tool.c util.c
87dnie_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
88gids_tool_SOURCES = gids-tool.c util.c
89gids_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS)
90
91npa_tool_SOURCES = npa-tool.c fread_to_eof.c util.c npa-tool-cmdline.c
92npa_tool_LDADD = $(top_builddir)/src/libopensc/libopensc.la \
93				 $(OPENPACE_LIBS)
94npa_tool_CFLAGS = -I$(top_srcdir)/src $(OPENPACE_CFLAGS) $(OPENSSL_CFLAGS)
95npa_tool_CFLAGS += -Wno-unused-but-set-variable
96if HAVE_UNKNOWN_WARNING_OPTION
97npa_tool_CFLAGS += -Wno-unknown-warning-option
98endif
99
100opensc_notify_SOURCES = opensc-notify.c opensc-notify-cmdline.c
101opensc_notify_LDADD = $(top_builddir)/src/libopensc/libopensc.la $(OPTIONAL_NOTIFY_LIBS)
102opensc_notify_CFLAGS = -I$(top_srcdir)/src $(PTHREAD_CFLAGS) $(OPTIONAL_NOTIFY_CFLAGS)
103opensc_notify_CFLAGS += -Wno-unused-but-set-variable
104if HAVE_UNKNOWN_WARNING_OPTION
105opensc_notify_CFLAGS += -Wno-unknown-warning-option
106endif
107
108egk_tool_SOURCES = egk-tool.c util.c egk-tool-cmdline.c
109egk_tool_LDADD = $(top_builddir)/src/libopensc/libopensc.la $(OPTIONAL_ZLIB_LIBS)
110egk_tool_CFLAGS = -I$(top_srcdir)/src $(OPTIONAL_ZLIB_CFLAGS)
111egk_tool_CFLAGS += -Wno-unused-but-set-variable
112if HAVE_UNKNOWN_WARNING_OPTION
113egk_tool_CFLAGS += -Wno-unknown-warning-option
114endif
115
116goid_tool_SOURCES = goid-tool.c util.c fread_to_eof.c goid-tool-cmdline.c
117goid_tool_LDADD = $(top_builddir)/src/libopensc/libopensc.la $(OPENPACE_LIBS)
118goid_tool_CFLAGS = -I$(top_srcdir)/src $(OPENPACE_CFLAGS)
119goid_tool_CFLAGS += -Wno-unused-but-set-variable
120if HAVE_UNKNOWN_WARNING_OPTION
121goid_tool_CFLAGS += -Wno-unknown-warning-option
122endif
123
124opensc_asn1_SOURCES = opensc-asn1.c fread_to_eof.c opensc-asn1-cmdline.c
125opensc_asn1_LDADD = $(top_builddir)/src/libopensc/libopensc.la $(OPTIONAL_ZLIB_LIBS)
126opensc_asn1_CFLAGS = -I$(top_srcdir)/src $(OPTIONAL_ZLIB_CFLAGS)
127opensc_asn1_CFLAGS += -Wno-unused-but-set-variable
128if HAVE_UNKNOWN_WARNING_OPTION
129opensc_asn1_CFLAGS += -Wno-unknown-warning-option
130endif
131
132pkcs11_register_SOURCES = pkcs11-register.c fread_to_eof.c pkcs11-register-cmdline.c
133pkcs11_register_CFLAGS = -I$(top_srcdir)/src
134pkcs11_register_CFLAGS += -Wno-unused-but-set-variable -Wno-unused-function
135pkcs11_register_LDADD = \
136	$(top_builddir)/src/common/libpkcs11.la
137if HAVE_UNKNOWN_WARNING_OPTION
138pkcs11_register_CFLAGS += -Wno-unknown-warning-option
139endif
140
141.PHONY: cmdline
142cmdline:
143	@for f in *.ggo.in; do $(do_subst) < "$$f" > "$${f%.in}"; done
144	@for f in *.ggo;    do $(GENGETOPT) --file-name="$${f%.ggo}-cmdline" --output-dir=$(builddir) < "$$f"; done
145	$(AM_V_GEN)$(GENGETOPT) --file-name=opensc-asn1-cmdline --output-dir=$(builddir) < opensc-asn1.ggo --unamed-opts
146
147if WIN32
148opensc_tool_SOURCES += versioninfo-tools.rc
149piv_tool_SOURCES += versioninfo-tools.rc
150opensc_explorer_SOURCES += versioninfo-tools.rc
151pkcs15_tool_SOURCES += versioninfo-tools.rc
152pkcs11_tool_SOURCES += versioninfo-tools.rc
153pkcs11_register_SOURCES += versioninfo-tools.rc
154pkcs15_crypt_SOURCES += versioninfo-tools.rc
155cryptoflex_tool_SOURCES += versioninfo-tools.rc
156pkcs15_init_SOURCES += versioninfo-tools.rc
157cardos_tool_SOURCES += versioninfo-tools.rc
158eidenv_SOURCES += versioninfo-tools.rc
159netkey_tool_SOURCES += versioninfo-tools.rc
160westcos_tool_SOURCES += versioninfo-tools.rc
161openpgp_tool_SOURCES += versioninfo-tools.rc
162iasecc_tool_SOURCES += versioninfo-tools.rc
163sc_hsm_tool_SOURCES += versioninfo-tools.rc
164gids_tool_SOURCES += versioninfo-tools.rc
165opensc_notify_SOURCES += versioninfo-opensc-notify.rc
166endif
167
168applicationsdir = $(datadir)/applications
169applications_DATA = org.opensc.notify.desktop
170
171if ENABLE_AUTOSTART
172xdg_autostartdir = $(sysconfdir)/xdg/autostart
173xdg_autostart_DATA = pkcs11-register.desktop
174endif
175
176%.desktop: %.desktop.in
177	$(AM_V_GEN)$(do_subst) < $< > $@
178
179noinst_DATA = org.opensc-project.mac.pkcs11-register.plist org.opensc-project.mac.opensc-notify.plist
180
181%.plist: %.plist.in
182	$(AM_V_GEN)$(do_subst) < $< > $@
183
184clean-local:
185	rm -f $(abs_builddir)/npa-tool.ggo $(abs_builddir)/opensc-notify.ggo $(abs_builddir)/opensc-asn1.ggo $(abs_builddir)/goid-tool.ggo $(abs_builddir)/egk-tool.ggo org.opensc.notify.desktop pkcs11-register.desktop org.opensc-project.mac.opensc-notify.plist org.opensc-project.mac.pkcs11-register.plist
186