summaryrefslogtreecommitdiffstats
path: root/gudev/Makefile.am
blob: 5f3f5047787fca4b007e266077a6036b534f7b02 (plain)
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
include $(top_srcdir)/Makefile.am.inc

SUBDIRS = . docs

NULL =

# libgudev versioning
#
LT_CURRENT=0
LT_REVISION=0
LT_AGE=0

INCLUDES = \
	-I$(top_builddir)/gudev			 			\
	-D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT				\
	-D_GUDEV_COMPILATION 						\
	-DG_UDEV_API_IS_SUBJECT_TO_CHANGE				\
	-DG_LOG_DOMAIN=\"GUdev\" 					\
	$(LIBUDEV_CFLAGS)						\
	$(NULL)

BUILT_SOURCES = 							\
	gudevmarshal.h		gudevmarshal.c				\
	gudevenumtypes.h	gudevenumtypes.c			\
	$(NULL)

gudevmarshal.h: gudevmarshal.list
	glib-genmarshal $< --prefix=g_udev_marshal --header > $@	\
	$(NULL)

gudevmarshal.c: gudevmarshal.list
	echo "#include \"gudevmarshal.h\"" > $@ && 			\
	glib-genmarshal $< --prefix=g_udev_marshal --body >> $@		\
	$(NULL)

gudevenumtypes.h: gudevenumtypes.h.template gudevenums.h
	glib-mkenums --template gudevenumtypes.h.template gudevenums.h >		\
	    gudevenumtypes.h.tmp && mv gudevenumtypes.h.tmp gudevenumtypes.h

gudevenumtypes.c: gudevenumtypes.c.template gudevenums.h
	glib-mkenums --template gudevenumtypes.c.template gudevenums.h >		\
	    gudevenumtypes.c.tmp && mv gudevenumtypes.c.tmp gudevenumtypes.c

lib_LTLIBRARIES=libgudev-1.0.la

libgudev_1_0_includedir=$(includedir)/gudev-1.0/gudev

libgudev_1_0_include_HEADERS = 						\
	gudev.h 							\
	gudevenums.h 							\
	gudevenumtypes.h						\
	gudevtypes.h 							\
	gudevclient.h 							\
	gudevdevice.h 							\
	$(NULL)

libgudev_1_0_la_SOURCES = 						\
	gudevenums.h 							\
	gudevenumtypes.h	gudevenumtypes.h			\
	gudevtypes.h 							\
	gudevclient.h		gudevclient.c 				\
	gudevdevice.h		gudevdevice.c 				\
	gudevprivate.h							\
	$(BUILT_SOURCES) 						\
	$(NULL)

libgudev_1_0_la_CFLAGS = $(LIBUDEV_LIBS) $(GLIB_CFLAGS)

libgudev_1_0_la_LIBADD = $(LIBUDEV_LIBS) $(GLIB_LIBS)

libgudev_1_0_la_LDFLAGS = 						\
	-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) 		\
	-export-dynamic -no-undefined 					\
	-export-symbols-regex '^g_udev_.*'				\
	$(NULL)

pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gudev-1.0.pc

EXTRA_DIST = gudev-1.0.pc.in gudevmarshal.list

CLEANFILES = $(BUILT_SOURCES)

# ----------------------------------------------------------------------------------------------------

if ENABLE_INTROSPECTION
GUdev-1.0.gir: libgudev-1.0.la $(G_IR_SCANNER) Makefile.am
	PKG_CONFIG_PATH=$(top_builddir)/data:$$PKG_CONFIG_PATH 	\
	$(G_IR_SCANNER) -v 					\
		--namespace GUdev 				\
		--nsversion=1.0					\
		--include=GObject-2.0 				\
		--library=gudev-1.0 				\
		--output $@ 					\
		--pkg=glib-2.0 					\
		--pkg=gobject-2.0 				\
		-I$(top_srcdir) 				\
		-D_GUDEV_COMPILATION 				\
		-DG_UDEV_API_IS_SUBJECT_TO_CHANGE		\
		$(top_srcdir)/gudev/gudev.h 			\
		$(top_srcdir)/gudev/gudevtypes.h 		\
		$(top_srcdir)/gudev/gudevenums.h 		\
		$(top_srcdir)/gudev/gudevenumtypes.h 		\
		$(top_srcdir)/gudev/gudevclient.h 		\
		$(top_srcdir)/gudev/gudevdevice.h 		\
		$(top_srcdir)/gudev/gudevclient.c 		\
		$(top_srcdir)/gudev/gudevdevice.c 		\
		$(NULL)


girdir = $(GIRDIR)
gir_DATA = GUdev-1.0.gir

typelibsdir = $(GIRTYPELIBDIR)
typelibs_DATA = GUdev-1.0.typelib

GUdev-1.0.typelib: GUdev-1.0.gir $(G_IR_COMPILER)
	g-ir-compiler GUdev-1.0.gir -o GUdev-1.0.typelib

EXTRA_DIST += GUdev-1.0.gir
CLEANFILES += $(gir_DATA) $(typelibs_DATA)

endif # ENABLE_INTROSPECTION

# ----------------------------------------------------------------------------------------------------

clean-local :
	rm -f *~