Sun May 13 16:54:35 CEST 2007 Jochen Eisinger <coffee@silcnet.org>
[silc.git] / apps / irssi / src / perl / Makefile.am
1 LIBTOOL = $(PERL_LIBTOOL)
2
3 include $(top_srcdir)/Makefile.defines.in
4
5 moduledir = $(silc_modulesdir)
6
7 perl_dirs = common ui textui silc
8
9 module_LTLIBRARIES = $(perl_module_lib) $(perl_module_fe_lib)
10 noinst_LTLIBRARIES = $(perl_static_lib) $(perl_static_fe_lib)
11 EXTRA_LTLIBRARIES = \
12         libperl_core.la libfe_perl.la \
13         libperl_core_static.la libfe_perl_static.la
14
15 libperl_core_la_LDFLAGS = -module -avoid-version -rpath $(moduledir)
16 libfe_perl_la_LDFLAGS = -module -avoid-version -rpath $(moduledir)
17
18 perl-core.c: perl-signals-list.h irssi-core.pl.h
19
20 INCLUDES += \
21         -I$(top_srcdir)/src \
22         -I$(top_srcdir)/src/core \
23         -I$(top_srcdir)/src/fe-common/core \
24         -I$(top_srcdir)/src/fe-common/silc \
25         $(GLIB_CFLAGS) \
26         -DSCRIPTDIR=\""$(datadir)/silc/scripts"\" \
27         -DPERL_USE_LIB=\""$(PERL_USE_LIB)"\" \
28         -DPERL_STATIC_LIBS=$(PERL_STATIC_LIBS) \
29         $(PERL_CFLAGS)
30
31 perl_sources = \
32         perl-core.c \
33         perl-common.c \
34         perl-signals.c \
35         perl-sources.c
36
37 perl_fe_sources = \
38         module-formats.c \
39         perl-fe.c
40
41 noinst_HEADERS = \
42         module.h \
43         module-fe.h \
44         module-formats.h \
45         perl-core.h \
46         perl-common.h \
47         perl-signals.h \
48         perl-sources.h
49
50 libperl_core_la_DEPENDENCIES = .libs/libperl_orig.a .libs/DynaLoader.a
51
52 .libs/libperl_orig.a:
53         if [ ! -d .libs ]; then mkdir .libs; fi
54         rm -f .libs/libperl_orig.a
55         if [ x$(LIBPERL_A) = x ]; then touch .libs/libperl_orig.a; else $(LN_S) $(LIBPERL_A) .libs/libperl_orig.a; fi
56 .libs/DynaLoader.a:
57         if [ ! -d .libs ]; then mkdir .libs; fi
58         rm -f .libs/DynaLoader.a
59         $(LN_S) $(DYNALOADER_A) .libs/DynaLoader.a
60
61 libperl_core_la_SOURCES = \
62         $(perl_sources)
63
64 libperl_core_static_la_SOURCES = \
65         $(perl_sources)
66
67 libfe_perl_la_SOURCES = \
68         $(perl_fe_sources)
69
70 libfe_perl_static_la_SOURCES = \
71         $(perl_fe_sources)
72
73 perl-signals-list.h: $(top_srcdir)/docs/signals.txt $(srcdir)/get-signals.pl
74         cat $(top_srcdir)/docs/signals.txt | $(perlpath) $(srcdir)/get-signals.pl > perl-signals-list.h
75
76 irssi-core.pl.h: irssi-core.pl
77         $(top_srcdir)/file2header.sh $(srcdir)/irssi-core.pl irssi_core_code > irssi-core.pl.h
78
79 common_sources = \
80         common/Irssi.xs \
81         common/Irssi.pm \
82         common/Channel.xs \
83         common/Core.xs \
84         common/Expando.xs \
85         common/Ignore.xs \
86         common/Log.xs \
87         common/Masks.xs \
88         common/Query.xs \
89         common/Rawlog.xs \
90         common/Server.xs \
91         common/Settings.xs \
92         common/Makefile.PL.in \
93         common/typemap \
94         common/module.h
95
96 ui_sources = \
97         ui/UI.xs \
98         ui/UI.pm \
99         ui/Formats.xs \
100         ui/Themes.xs \
101         ui/Window.xs \
102         ui/Makefile.PL.in \
103         ui/typemap \
104         ui/module.h
105
106 textui_sources = \
107         textui/TextUI.xs \
108         textui/TextUI.pm \
109         textui/TextBuffer.xs \
110         textui/TextBufferView.xs \
111         textui/Statusbar.xs \
112         textui/Makefile.PL.in \
113         textui/typemap \
114         textui/module.h
115
116 silc_sources = \
117         silc/Silc.xs \
118         silc/Silc.pm \
119         silc/Channel.xs \
120         silc/Server.xs \
121         silc/Query.xs \
122         silc/typemap \
123         silc/module.h
124
125 EXTRA_DIST = \
126         libperl_dynaloader.la \
127         libperl_orig.la \
128         get-signals.pl \
129         irssi-core.pl \
130         $(common_sources) \
131         $(ui_sources) \
132         $(textui_sources) \
133         $(silc_sources)
134
135 all-local:
136         for dir in $(perl_dirs); do \
137           cd $$dir && \
138           if [ ! -f Makefile ]; then \
139             $(perlpath) Makefile.PL $(PERL_MM_PARAMS); \
140           fi && \
141           ($(MAKE) CC="$(CC)" CCFLAGS="$(PERL_CFLAGS) $(CFLAGS)" $(PERL_EXTRA_OPTS) || \
142            $(MAKE) CC="$(CC)" CCFLAGS="$(PERL_CFLAGS) $(CFLAGS)" $(PERL_EXTRA_OPTS)) && \
143           cd ..; \
144         done
145
146 install-exec-local:
147         for dir in $(perl_dirs); do \
148           cd $$dir && $(MAKE) install && cd ..; \
149         done
150
151 clean-generic:
152         for dir in $(perl_dirs); do \
153           cd $$dir; \
154           $(MAKE) clean; \
155           cd ..; \
156         done
157
158 distclean-generic:
159         for dir in $(perl_dirs); do \
160           cd $$dir; \
161           $(MAKE) realclean; rm -f Makefile.PL Makefile; \
162           cd ..; \
163         done
164
165 libperl_core_la_LIBADD = $(PERL_LDFLAGS)