More Win32 automake macros. For .def files: GLIB_DEF, GMODULE_DEF,
[platform/upstream/glib.git] / gmodule / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2
3 INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/glib -I$(top_srcdir)/gmodule \
4         -DG_LOG_DOMAIN=\"GModule\" @GLIB_DEBUG_FLAGS@
5
6 EXTRA_DIST =    \
7                 makefile.mingw.in \
8                 makefile.msc.in \
9                 gmoduleconf.h.in \
10                 gmodule.def     \
11                 gmodule-dl.c    \
12                 gmodule-dld.c   \
13                 gmodule-os2.c   \
14                 gmodule-win32.c \
15                 gmodule-beos.c  \
16                 gmoduleconf.h.win32 \
17                 gmodule.rc.in
18
19 BUILT_EXTRA_DIST = \
20                 makefile.mingw  \
21                 makefile.msc    \
22                 gmodule.rc
23
24 BUILT_SOURCES = gmoduleconf.h
25 gmoduleconf.h:  gmoduleconf.h.in
26
27 glibincludedir=$(includedir)/glib-2.0
28 glibinclude_HEADERS = \
29                 gmodule.h
30
31 libglib = $(top_builddir)/glib/libglib-1.3.la
32
33 top_builddir_full=`cd \$(top_builddir); pwd`
34
35 lib_LTLIBRARIES = libgmodule-1.3.la
36 noinst_LTLIBRARIES = libgplugin_a.la libgplugin_b.la
37
38 if MS_LIB_AVAILABLE
39 noinst_DATA = gmodule-1.3.lib
40 endif
41
42 if PLATFORM_WIN32
43 no_undefined = -no-undefined
44 endif
45 if OS_WIN32
46 export_symbols = -export-symbols gmodule.def
47 plugin_rpath = -rpath `pwd`
48 endif
49
50 libgmodule_1_3_la_SOURCES = gmodule.c
51 libgmodule_1_3_la_LDFLAGS = \
52         @G_MODULE_LDFLAGS@ \
53         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
54         -export-dynamic $(no_undefined) $(export_symbols)
55
56 libgmodule_1_3_la_LIBADD = @G_MODULE_WIN32_RESOURCE@ @G_MODULE_LIBS_EXTRA@ @G_MODULE_LIBS@ $(libglib)
57
58 libgmodule_1_3_la_DEPENDENCIES = @G_MODULE_WIN32_RESOURCE@ @GMODULE_DEF@
59
60 libgplugin_a_la_SOURCES = libgplugin_a.c
61 libgplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined) $(plugin_rpath)
62 libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ @G_MODULE_LIBS_EXTRA@ @G_MODULE_PLUGIN_LIBS@ libgmodule-1.3.la $(libglib)
63
64 libgplugin_b_la_SOURCES = libgplugin_b.c
65 libgplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined) $(plugin_rpath)
66 libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ @G_MODULE_LIBS_EXTRA@ @G_MODULE_PLUGIN_LIBS@ libgmodule-1.3.la $(libglib)
67
68 noinst_PROGRAMS = testgmodule
69 testgmodule_LDFLAGS += @G_MODULE_LDFLAGS@
70 testgmodule_LDADD = @TESTGMODULE_EXP@ libgmodule-1.3.la $(libglib) @G_MODULE_LIBS@
71 testgmodule_DEPENDENCIES = @TESTGMODULE_EXP@
72
73 if OS_WIN32
74 @G_MODULE_WIN32_RESOURCE@ : gmodule.rc
75         $(top_srcdir)/build/win32/lt-compile-resource gmodule.rc @G_MODULE_WIN32_RESOURCE@
76 endif
77
78 gmodule-1.3.lib: libgmodule-1.3.la gmodule.def
79         lib -name:libgmodule-1.3-@LT_CURRENT_MINUS_AGE@.dll -def:gmodule.def -out:$@
80
81 testgmodule.exp: testgmodule.o
82         dlltool --output-exp testgmodule.exp testgmodule.o
83
84 gmodule.rc: $(top_builddir)/config.status $(top_srcdir)/gmodule/gmodule.rc.in
85         cd $(top_builddir) && CONFIG_FILES=gmodule/$@ CONFIG_HEADERS= $(SHELL) ./config.status
86
87 makefile.mingw: $(top_builddir)/config.status $(top_srcdir)/gmodule/makefile.mingw.in
88         cd $(top_builddir) && CONFIG_FILES=gmodule/$@ CONFIG_HEADERS= $(SHELL) ./config.status
89
90 makefile.msc: $(top_builddir)/config.status $(top_srcdir)/gmodule/makefile.msc.in
91         cd $(top_builddir) && CONFIG_FILES=gmodule/$@ CONFIG_HEADERS= $(SHELL) ./config.status
92
93 .PHONY: files release
94
95 files:
96         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
97           echo $$p; \
98         done
99
100 release:
101         $(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
102
103 dist-hook: $(BUILT_EXTRA_DIST)
104         @files='$(BUILT_EXTRA_DIST)'; \
105         for f in $$files; do \
106           if test -f $$f; then d=.; else d=$(srcdir); fi; \
107           cp $$d/$$f $(distdir) || exit 1; done
108