summaryrefslogtreecommitdiff
path: root/giscanner/Makefile.am
blob: 91e1772c013feaf872cbf8d58a94f8c3d4c2db2f (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
## Process this file with automake to produce Makefile.in

INCLUDES = -I$(top_srcdir)/girepository
BUILT_SOURCES = 		\
	scannerparser.c		\
	scannerparser.h 	\
	scannerlexer.c 		\
	scannerlexer.h

CLEANFILES = 		\
	scannerparser.c		\
	scannerparser.h 	\
	scannerlexer.c 		\
	scannerlexer.h
AM_YFLAGS = -d -t

# Why do I have to do this automake?
scannerlexer.h: scannerlexer.c

noinst_LTLIBRARIES = libgiscanner.la

libgiscanner_la_SOURCES = \
	sourcescanner.c				\
	sourcescanner.h				\
	scannerlexer.l				\
	scannerparser.y				\
	grealpath.h
libgiscanner_la_LIBADD = $(GOBJECT_LIBS)
libgiscanner_la_CFLAGS = $(GOBJECT_CFLAGS)

GCOVSOURCES = $(libgiscanner_la_SOURCES)

# Python module
pkgpyexecdir = $(pyexecdir)/giscanner
pkgpyexec_LTLIBRARIES = _giscanner.la
pkgpyexec_PYTHON = 		\
	__init__.py		\
	ast.py			\
	cgobject.py		\
	config.py		\
	gidlparser.py		\
	gidlwriter.py		\
	girparser.py		\
	girwriter.py		\
	glibast.py		\
	glibtransformer.py 	\
	odict.py		\
	sourcescanner.py	\
	transformer.py		\
	utils.py		\
	xmlwriter.py

_giscanner_la_CFLAGS = \
	$(PYTHON_INCLUDES) \
	$(GOBJECT_CFLAGS) \
	-I$(top_srcdir)/giscanner
_giscanner_la_LIBADD = $(GOBJECT_LIBS) libgiscanner.la

_giscanner_la_LDFLAGS = \
	-module -avoid-version -export-symbols-regex init_giscanner

if OS_WIN32
# Yuck. Probably there is a way to get this from Python, but I don't
# know how. Use -Wl to avoid libtool crack.
_giscanner_la_LDFLAGS += -Wl,$(pyexecdir)/../../libs/libpython25.a -no-undefined
endif

_giscanner_la_SOURCES = giscannermodule.c

if OS_WIN32
BUILT_SOURCES += _giscanner.pyd
CLEANFILES += _giscanner.pyd

_giscanner.pyd: _giscanner.la
	cp .libs/_giscanner.dll $@

install-exec-hook:
	mv $(pkgpyexecdir)/_giscanner.dll $(pkgpyexecdir)/_giscanner.pyd
	rm $(pkgpyexecdir)/_giscanner.dll.a
	rm $(pkgpyexecdir)/_giscanner.la
else
BUILT_SOURCES += _giscanner.so
CLEANFILES += _giscanner.so
endif

# Yuck, ugly but...
_giscanner.so: _giscanner.la
	ln -sf .libs/_giscanner.so .

include $(top_srcdir)/gcov.mak

check-local:
	@if test "$(top_builddir)" != "$(top_srcdir)"; then \
	   cp $(top_srcdir)/giscanner/*.py $(top_builddir)/giscanner; \
	fi