introspection: build docbook when generating the code
[NetworkManager.git] / introspection / Makefile.am
1 noinst_LTLIBRARIES = \
2         libnmdbus.la
3
4 # gdbus-codegen 2.38 will emit code that requires glib 2.38, which
5 # will then cause availability warnings if we define
6 # GLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32.
7 #
8 # This is fixed in GLib 2.40 (it emits code that takes
9 # GLIB_VERSION_MAX_ALLOWED into account), so this workaround can go
10 # away when we depend on that.
11 AM_CPPFLAGS = $(filter-out -DGLIB_VERSION_MAX_ALLOWED%,$(GLIB_CFLAGS))
12
13 nodist_libnmdbus_la_SOURCES = \
14         nmdbus-access-point.c \
15         nmdbus-access-point.h \
16         nmdbus-active-connection.c \
17         nmdbus-active-connection.h \
18         nmdbus-agent-manager.c \
19         nmdbus-agent-manager.h \
20         nmdbus-device-adsl.c \
21         nmdbus-device-adsl.h \
22         nmdbus-device-bond.c \
23         nmdbus-device-bond.h \
24         nmdbus-device-bridge.c \
25         nmdbus-device-bridge.h \
26         nmdbus-device-bt.c \
27         nmdbus-device-bt.h \
28         nmdbus-device-ethernet.c \
29         nmdbus-device-ethernet.h \
30         nmdbus-device.c \
31         nmdbus-device.h \
32         nmdbus-device-generic.c \
33         nmdbus-device-generic.h \
34         nmdbus-device-infiniband.c \
35         nmdbus-device-infiniband.h \
36         nmdbus-device-ip-tunnel.c \
37         nmdbus-device-ip-tunnel.h \
38         nmdbus-device-macvlan.c \
39         nmdbus-device-macvlan.h \
40         nmdbus-device-modem.c \
41         nmdbus-device-modem.h \
42         nmdbus-device-olpc-mesh.c \
43         nmdbus-device-olpc-mesh.h \
44         nmdbus-device-team.c \
45         nmdbus-device-team.h \
46         nmdbus-device-tun.c \
47         nmdbus-device-tun.h \
48         nmdbus-device-veth.c \
49         nmdbus-device-veth.h \
50         nmdbus-device-vlan.c \
51         nmdbus-device-vlan.h \
52         nmdbus-device-vxlan.c \
53         nmdbus-device-vxlan.h \
54         nmdbus-device-wifi.c \
55         nmdbus-device-wifi.h \
56         nmdbus-device-wimax.c \
57         nmdbus-device-wimax.h \
58         nmdbus-dhcp4-config.c \
59         nmdbus-dhcp4-config.h \
60         nmdbus-dhcp6-config.c \
61         nmdbus-dhcp6-config.h \
62         nmdbus-ip4-config.c \
63         nmdbus-ip4-config.h \
64         nmdbus-ip6-config.c \
65         nmdbus-ip6-config.h \
66         nmdbus-manager.c \
67         nmdbus-manager.h \
68         nmdbus-ppp-manager.c \
69         nmdbus-ppp-manager.h \
70         nmdbus-secret-agent.c \
71         nmdbus-secret-agent.h \
72         nmdbus-settings-connection.c \
73         nmdbus-settings-connection.h \
74         nmdbus-settings.c \
75         nmdbus-settings.h \
76         nmdbus-vpn-connection.c \
77         nmdbus-vpn-connection.h \
78         nmdbus-vpn-plugin.c \
79         nmdbus-vpn-plugin.h
80
81 DBUS_INTERFACE_DOCS = \
82         nmdbus-access-point-org.freedesktop.NetworkManager.AccessPoint.xml \
83         nmdbus-active-connection-org.freedesktop.NetworkManager.Connection.Active.xml \
84         nmdbus-device-team-org.freedesktop.NetworkManager.Device.Team.xml \
85         nmdbus-dhcp6-config-org.freedesktop.NetworkManager.DHCP6Config.xml \
86         nmdbus-device-wifi-org.freedesktop.NetworkManager.Device.Wireless.xml \
87         nmdbus-manager-org.freedesktop.NetworkManager.xml \
88         nmdbus-vpn-connection-org.freedesktop.NetworkManager.VPN.Connection.xml \
89         nmdbus-secret-agent-org.freedesktop.NetworkManager.SecretAgent.xml \
90         nmdbus-device-org.freedesktop.NetworkManager.Device.xml \
91         nmdbus-vpn-plugin-org.freedesktop.NetworkManager.VPN.Plugin.xml \
92         nmdbus-device-bt-org.freedesktop.NetworkManager.Device.Bluetooth.xml \
93         nmdbus-device-vxlan-org.freedesktop.NetworkManager.Device.Vxlan.xml \
94         nmdbus-settings-connection-org.freedesktop.NetworkManager.Settings.Connection.xml \
95         nmdbus-device-bond-org.freedesktop.NetworkManager.Device.Bond.xml \
96         nmdbus-device-macvlan-org.freedesktop.NetworkManager.Device.Macvlan.xml \
97         nmdbus-ppp-manager-org.freedesktop.NetworkManager.PPP.xml \
98         nmdbus-device-vlan-org.freedesktop.NetworkManager.Device.Vlan.xml \
99         nmdbus-device-adsl-org.freedesktop.NetworkManager.Device.Adsl.xml \
100         nmdbus-agent-manager-org.freedesktop.NetworkManager.AgentManager.xml \
101         nmdbus-device-wimax-org.freedesktop.NetworkManager.Device.WiMax.xml \
102         nmdbus-device-ip-tunnel-org.freedesktop.NetworkManager.Device.IPTunnel.xml \
103         nmdbus-device-tun-org.freedesktop.NetworkManager.Device.Tun.xml \
104         nmdbus-device-bridge-org.freedesktop.NetworkManager.Device.Bridge.xml \
105         nmdbus-device-olpc-mesh-org.freedesktop.NetworkManager.Device.OlpcMesh.xml \
106         nmdbus-dhcp4-config-org.freedesktop.NetworkManager.DHCP4Config.xml \
107         nmdbus-device-generic-org.freedesktop.NetworkManager.Device.Generic.xml \
108         nmdbus-device-infiniband-org.freedesktop.NetworkManager.Device.Infiniband.xml \
109         nmdbus-device-modem-org.freedesktop.NetworkManager.Device.Modem.xml \
110         nmdbus-ip6-config-org.freedesktop.NetworkManager.IP6Config.xml \
111         nmdbus-device-veth-org.freedesktop.NetworkManager.Device.Veth.xml \
112         nmdbus-settings-org.freedesktop.NetworkManager.Settings.xml \
113         nmdbus-device-ethernet-org.freedesktop.NetworkManager.Device.Wired.xml \
114         nmdbus-ip4-config-org.freedesktop.NetworkManager.IP4Config.xml
115
116 define _make_nmdbus_rule
117 $(1): $(patsubst nmdbus-%.c,nm-%.xml,$(1))
118         $$(AM_V_GEN) gdbus-codegen \
119                 --generate-c-code $$(basename $$@) \
120                 --generate-docbook $$(basename $$@) \
121                 --c-namespace NMDBus \
122                 --interface-prefix org.freedesktop.NetworkManager \
123                 $$<
124
125 $(filter $(basename $(1))-org.freedesktop.NetworkManager.%,$(DBUS_INTERFACE_DOCS)): $(1)
126         @true
127
128 $(basename $(1)).h: $(1)
129         @true
130 endef
131
132 $(foreach f,$(filter %.c,$(nodist_libnmdbus_la_SOURCES)),$(eval $(call _make_nmdbus_rule,$f)))
133
134 BUILT_SOURCES = $(nodist_libnmdbus_la_SOURCES) $(DBUS_INTERFACE_DOCS)
135
136 CLEANFILES = $(BUILT_SOURCES)
137
138 EXTRA_DIST = \
139         all.xml.in \
140         generic-types.xml \
141         errors.xml \
142         vpn-errors.xml \
143         nm-access-point.xml \
144         nm-active-connection.xml \
145         nm-agent-manager.xml \
146         nm-device-adsl.xml \
147         nm-device-bond.xml \
148         nm-device-bridge.xml \
149         nm-device-bt.xml \
150         nm-device-ethernet.xml \
151         nm-device-generic.xml \
152         nm-device-infiniband.xml \
153         nm-device-ip-tunnel.xml \
154         nm-device-macvlan.xml \
155         nm-device-modem.xml \
156         nm-device-olpc-mesh.xml \
157         nm-device-team.xml \
158         nm-device-tun.xml \
159         nm-device-veth.xml \
160         nm-device-vlan.xml \
161         nm-device-vxlan.xml \
162         nm-device-wifi.xml \
163         nm-device-wimax.xml \
164         nm-device.xml \
165         nm-dhcp4-config.xml \
166         nm-dhcp6-config.xml \
167         nm-ip4-config.xml \
168         nm-ip6-config.xml \
169         nm-manager.xml \
170         nm-ppp-manager.xml \
171         nm-secret-agent.xml \
172         nm-settings-connection.xml \
173         nm-settings.xml \
174         nm-vpn-connection.xml \
175         nm-vpn-plugin.xml \
176         nm-wimax-nsp.xml