Imported Upstream version 3.3.2
[debian/amanda] / perl / Makefile.am
1 ##
2 ## Prepare for SWIGging
3 ##
4
5 include $(top_srcdir)/config/automake/vars.am
6 include $(top_srcdir)/config/automake/scripts.am
7
8 # build amglue *first*
9 SUBDIRS = amglue .
10
11 # add the SWIG symbol to avoid conflicts with perl definitions.
12 # $AMANDA_WARNING_CFLAGS is omitted because SWIG-generated files tend
13 # to trigger warnings.
14 AM_CFLAGS = -DSWIG $(AMANDA_SWIG_PERL_CFLAGS)
15
16 # Appropriate INCLUDES depends on which components (server or client) are
17 # being built
18 INCLUDES =  \
19             -I$(top_builddir)/common-src \
20             -I$(top_srcdir)/common-src \
21             -I$(top_srcdir)/amandad-src \
22             -I$(top_srcdir)/amar-src \
23             -I$(top_srcdir)/xfer-src \
24             -I$(top_srcdir)/perl/amglue \
25             -I$(top_srcdir)/gnulib \
26             -I$(top_srcdir)/ndmp-src \
27             $(PERL_INC)
28
29 if WANT_SERVER
30 INCLUDES += -I$(top_srcdir)/device-src \
31             -I$(top_srcdir)/server-src
32 endif
33
34 if WANT_CLIENT
35 INCLUDES += -I$(top_srcdir)/client-src
36 endif
37
38 if WANT_RECOVER
39 INCLUDES += -I$(top_srcdir)/recover-src
40 endif
41
42 # (amplot has a conditional, but doesn't have any header files)
43
44 ##
45 ## HTML Generation
46 ##
47
48 # This isn't a very robust implementation, as it's only meant to make the HTML
49 # available online as part of the automated compilation process.  It assumes
50 # that all perl modules were built (not just server or client), and that the
51 # build directory does not contain any "junk".
52
53 html: make_html amperl.css $(PM_FILES)
54         rm -rf html-tmp/ && mkdir html-tmp/
55         cp amperl.css html-tmp/
56         $(PERL) make_html --homeurl "$(POD_HOME_URL)" html-tmp/ $(PM_FILES)
57         cd html-tmp/ && tar -zcf $(abs_builddir)/html.tar.gz .
58         rm -rf html-tmp/
59 ##
60 ## SWIG-generated packages
61 ##
62
63 # Tell libtool to not bother versioning the libs we build, since perl won't
64 # pay attention to such things, anyway.
65 PERL_EXT_LDFLAGS = -avoid-version -shared
66
67 # And add any flags the user has requested; on FreeBSD, this pulls in the
68 # threading library
69 PERL_EXT_LDFLAGS += $(PERLEXTLIBS)
70
71 # list our SWIG libraries; these are %included from .swg files
72 AMGLUE_SWG = amglue/amglue.swg \
73         amglue/amglue.swg \
74         amglue/constants.swg \
75         amglue/directtcp.swg \
76         amglue/dumpspecs.swg \
77         amglue/exports.swg \
78         amglue/filehandles.swg \
79         amglue/glib.swg \
80         amglue/integers.swg
81 EXTRA_DIST += $(AMGLUE_SWG)
82
83 # SWIG OPTIONS:
84 # -perl5 -proxy: generate perl code, with proxy (shadow) classes
85 # -DSWIG_TYPE_TABLE: the name for the global type table; customized
86 #  to minimize type collisions with other SWIG-generated modules
87 # -I$(srcdir) use include files relative to this directory
88 SWIG_OPTIONS=-perl5 -proxy -DSWIG_TYPE_TABLE=SWIG_TYPES_Amanda -I$(srcdir)
89
90 # Suffix rules.  These are parallel-build compatible, but may cause
91 # strange behavior if there are other .c files in this directory.  The
92 # 'rm -f $@' is needed because SWIG sometimes fails to remove its output
93 # file in the event of a syntax error.  .i files are pre-processor output;
94 # they are only used during development.
95 %.c : %.swg $(AMGLUE_SWG) %.pod
96         $(mkdir_p) `dirname $@`
97         $(SWIG) $(SWIG_OPTIONS) -o $@ $(top_srcdir)/perl/$< || { rm -f $@; false; }
98 %.pm : %.c
99         @echo "$@ was produced as a side-effect of creating $<"
100 %.i : %.swg $(AMGLUE_SWG)
101         $(SWIG) $(SWIG_OPTIONS) -E $(top_srcdir)/perl/$< >$@
102
103 ###
104 ### Packages
105 ###
106
107 # PM_FILES should contain the .pm files from which the HTML should
108 # be geneated.  This is just the concatenation of foo_DATA for all $(foodir)
109 # into which perl modules are installed.
110 PM_FILES=
111
112 Amandadir=$(amperldir)/Amanda
113 Amanda_DATA =
114 PM_FILES += $(Amanda_DATA)
115
116 # PACKAGE: Amanda::Archive
117 libArchivedir = $(amperldir)/auto/Amanda/Archive
118 libArchive_LTLIBRARIES = libArchive.la
119 libArchive_la_SOURCES = Amanda/Archive.c $(AMGLUE_SWG)
120 libArchive_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
121 libArchive_la_LIBADD = amglue/libamglue.la \
122         $(top_builddir)/amar-src/libamar.la \
123         $(top_builddir)/common-src/libamanda.la
124 Amanda_DATA += Amanda/Archive.pm
125 EXTRA_DIST += Amanda/Archive.swg Amanda/Archive.pm Amanda/Archive.pod
126 MAINTAINERCLEANFILES += Amanda/Archive.c Amanda/Archive.pm
127
128 # PACKAGE: Amanda::Process
129 Amanda_DATA += Amanda/Process.pm
130 EXTRA_DIST += Amanda/Process.pm
131
132 if WANT_SERVER
133 # PACKAGE: Amanda::Device
134 libDevicedir = $(amperldir)/auto/Amanda/Device
135 libDevice_LTLIBRARIES = libDevice.la
136 libDevice_la_SOURCES = Amanda/Device.c $(AMGLUE_SWG)
137 libDevice_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
138 libDevice_la_LIBADD = amglue/libamglue.la \
139         $(top_builddir)/device-src/libamdevice.la \
140         $(top_builddir)/common-src/libamanda.la
141 Amanda_DATA += Amanda/Device.pm
142 MAINTAINERCLEANFILES += Amanda/Device.c Amanda/Device.pm
143 endif
144 EXTRA_DIST += Amanda/Device.swg Amanda/Device.pm Amanda/Device.pod
145
146 if WANT_SERVER
147 # PACKAGE: Amanda::Logfile
148 libLogfiledir = $(amperldir)/auto/Amanda/Logfile
149 libLogfile_LTLIBRARIES = libLogfile.la
150 libLogfile_la_SOURCES = Amanda/Logfile.c $(AMGLUE_SWG)
151 libLogfile_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
152 libLogfile_la_LIBADD = amglue/libamglue.la \
153         $(top_builddir)/server-src/libamserver.la \
154         $(top_builddir)/common-src/libamanda.la
155 Amanda_DATA += Amanda/Logfile.pm
156 MAINTAINERCLEANFILES += Amanda/Logfile.c Amanda/Logfile.pm
157 endif
158 EXTRA_DIST += Amanda/Logfile.swg Amanda/Logfile.pm Amanda/Logfile.pod
159
160 if WANT_SERVER
161 # PACKAGE: Amanda::Cmdline
162 libCmdlinedir = $(amperldir)/auto/Amanda/Cmdline
163 libCmdline_LTLIBRARIES = libCmdline.la
164 libCmdline_la_SOURCES = Amanda/Cmdline.c $(AMGLUE_SWG)
165 libCmdline_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
166 libCmdline_la_LIBADD = amglue/libamglue.la \
167         $(top_builddir)/server-src/libamserver.la \
168         $(top_builddir)/common-src/libamanda.la
169 Amanda_DATA += Amanda/Cmdline.pm
170 MAINTAINERCLEANFILES += Amanda/Cmdline.c Amanda/Cmdline.pm
171 endif
172 EXTRA_DIST += Amanda/Cmdline.swg Amanda/Cmdline.pm Amanda/Cmdline.pod
173
174 if WANT_SERVER
175 # PACKAGE: Amanda::Tapelist
176 libTapelistdir = $(amperldir)/auto/Amanda/Tapelist
177 libTapelist_LTLIBRARIES = libTapelist.la
178 libTapelist_la_SOURCES = Amanda/Tapelist.c $(AMGLUE_SWG)
179 libTapelist_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
180 libTapelist_la_LIBADD = amglue/libamglue.la \
181         $(top_builddir)/server-src/libamserver.la \
182         $(top_builddir)/common-src/libamanda.la
183 Amanda_DATA += Amanda/Tapelist.pm
184 MAINTAINERCLEANFILES += Amanda/Tapelist.c Amanda/Tapelist.pm
185 endif
186 EXTRA_DIST += Amanda/Tapelist.swg Amanda/Tapelist.pm Amanda/Tapelist.pod
187
188 if WANT_SERVER
189 # PACKAGE: Amanda::Disklist
190 libDisklistdir = $(amperldir)/auto/Amanda/Disklist
191 libDisklist_LTLIBRARIES = libDisklist.la
192 libDisklist_la_SOURCES = Amanda/Disklist.c $(AMGLUE_SWG)
193 libDisklist_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
194 libDisklist_la_LIBADD = amglue/libamglue.la \
195         $(top_builddir)/server-src/libamserver.la \
196         $(top_builddir)/common-src/libamanda.la
197 Amanda_DATA += Amanda/Disklist.pm
198 MAINTAINERCLEANFILES += Amanda/Disklist.c Amanda/Disklist.pm
199 endif
200 EXTRA_DIST += Amanda/Disklist.swg Amanda/Disklist.pm Amanda/Disklist.pod
201
202 # PACKAGE: Amanda::Feature
203 Amanda/Feature.pm: ../common-src/amfeatures.h
204 libFeaturedir = $(amperldir)/auto/Amanda/Feature
205 libFeature_LTLIBRARIES = libFeature.la
206 libFeature_la_SOURCES = Amanda/Feature.c $(AMGLUE_SWG)
207 libFeature_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
208 libFeature_la_LIBADD = amglue/libamglue.la \
209         $(top_builddir)/common-src/libamanda.la
210 Amanda_DATA += Amanda/Feature.pm
211 MAINTAINERCLEANFILES += Amanda/Feature.c Amanda/Feature.pm
212 EXTRA_DIST += Amanda/Feature.swg Amanda/Feature.pm Amanda/Feature.pod
213
214 if WANT_SERVER
215 # PACKAGE: Amanda::ScanInventory
216 Amanda_DATA += Amanda/ScanInventory.pm
217 endif
218 EXTRA_DIST += Amanda/ScanInventory.pm
219
220 if WANT_SERVER
221 # PACKAGE: Amanda::Interactivity
222 Amanda_DATA += Amanda/Interactivity.pm
223 endif
224 EXTRA_DIST += Amanda/Interactivity.pm
225
226 # PACKAGE: Amanda::ClientService
227 Amanda_DATA += Amanda/ClientService.pm
228 EXTRA_DIST += Amanda/ClientService.pm
229
230 if WANT_SERVER
231 # PACKAGE: Amanda::Interactivity::*
232 AmandaInteractivitydir = $(amperldir)/Amanda/Interactivity
233 AmandaInteractivity_DATA = \
234         Amanda/Interactivity/email.pm \
235         Amanda/Interactivity/stdin.pm \
236         Amanda/Interactivity/tty.pm \
237         Amanda/Interactivity/tty_email.pm
238 endif
239 PM_FILES += $(AmandaInteractivity_DATA)
240 EXTRA_DIST += $(AmandaInteractivity_DATA)
241
242 if WANT_SERVER
243 # PACKAGE: Amanda::Changer
244 Amanda_DATA += Amanda/Changer.pm
245 endif
246 EXTRA_DIST += Amanda/Changer.pm
247
248 if WANT_SERVER
249 # PACKAGE: Amanda::Changer::*
250 AmandaChangerdir = $(amperldir)/Amanda/Changer
251 AmandaChanger_DATA = \
252         Amanda/Changer/aggregate.pm \
253         Amanda/Changer/compat.pm \
254         Amanda/Changer/disk.pm \
255         Amanda/Changer/multi.pm \
256         Amanda/Changer/null.pm \
257         Amanda/Changer/rait.pm \
258         Amanda/Changer/robot.pm \
259         Amanda/Changer/single.pm
260
261 if WANT_NDMP
262 AmandaChanger_DATA += Amanda/Changer/ndmp.pm
263 endif
264 PM_FILES += $(AmandaChanger_DATA)
265 endif
266 EXTRA_DIST += $(AmandaChanger_DATA)
267
268 if WANT_SERVER
269 # PACKAGE: Amanda::Curinfo
270 Amanda_DATA += Amanda/Curinfo.pm
271 endif
272 EXTRA_DIST += Amanda/Curinfo.pm
273
274 if WANT_SERVER
275 # PACKAGE: Amanda::Curinfo::*
276 AmandaCurinfodir = $(amperldir)/Amanda/Curinfo
277 AmandaCurinfo_DATA = \
278         Amanda/Curinfo/Info.pm
279 PM_FILES += $(AmandaCurinfo_DATA)
280 endif
281 EXTRA_DIST += $(AmandaCurinfo_DATA)
282
283 if WANT_SERVER
284 # PACKAGE: Amanda::Recovery::*
285 AmandaRecoverydir = $(amperldir)/Amanda/Recovery
286 AmandaRecovery_DATA = \
287         Amanda/Recovery/Clerk.pm \
288         Amanda/Recovery/Planner.pm \
289         Amanda/Recovery/Scan.pm
290 PM_FILES += $(AmandaRecovery_DATA)
291 endif
292 EXTRA_DIST += $(AmandaRecovery_DATA)
293
294 if WANT_SERVER
295 # PACKAGE: Amanda::Taper::*
296 AmandaTaperdir = $(amperldir)/Amanda/Taper
297 AmandaTaper_DATA = \
298         Amanda/Taper/Controller.pm \
299         Amanda/Taper/Protocol.pm \
300         Amanda/Taper/Scan.pm \
301         Amanda/Taper/Scribe.pm \
302         Amanda/Taper/Worker.pm
303 PM_FILES += $(AmandaTaper_DATA)
304 endif
305 EXTRA_DIST += $(AmandaTaper_DATA)
306
307 if WANT_SERVER
308 # PACKAGE: Amanda::Taper::Scan::*
309 AmandaTaperScandir = $(amperldir)/Amanda/Taper/Scan
310 AmandaTaperScan_DATA = \
311         Amanda/Taper/Scan/lexical.pm \
312         Amanda/Taper/Scan/oldest.pm \
313         Amanda/Taper/Scan/traditional.pm
314 PM_FILES += $(AmandaTaperScan_DATA)
315 endif
316 EXTRA_DIST += $(AmandaTaperScan_DATA)
317
318 if WANT_SERVER
319 # PACKAGE: Amanda::DB::*
320 Amanda_DBdir = $(Amandadir)/DB
321 Amanda_DB_DATA =
322 PM_FILES += $(Amanda_DB_DATA)
323 endif
324
325 if WANT_SERVER
326 # PACKAGE: Amanda::DB::Catalog
327 Amanda_DB_DATA += Amanda/DB/Catalog.pm
328 endif
329 EXTRA_DIST += Amanda/DB/Catalog.pm
330
331 # PACKAGE: Amanda::Xfer
332 libXferdir = $(amperldir)/auto/Amanda/Xfer
333 libXfer_LTLIBRARIES = libXfer.la
334 libXfer_la_SOURCES = Amanda/Xfer.c $(AMGLUE_SWG)
335 libXfer_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
336 libXfer_la_LIBADD = amglue/libamglue.la \
337         $(top_builddir)/xfer-src/libamxfer.la
338 Amanda_DATA += Amanda/Xfer.pm
339 MAINTAINERCLEANFILES += Amanda/Xfer.c Amanda/Xfer.pm
340 EXTRA_DIST += Amanda/Xfer.swg Amanda/Xfer.pm Amanda/Xfer.pod
341
342 if WANT_NDMP
343 # PACKAGE: Amanda::NDMP
344 libNDMPdir = $(amperldir)/auto/Amanda/NDMP
345 libNDMP_LTLIBRARIES = libNDMP.la
346 libNDMP_la_SOURCES = Amanda/NDMP.c $(AMGLUE_SWG)
347 libNDMP_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
348 libNDMP_la_LIBADD = amglue/libamglue.la \
349         $(top_builddir)/common-src/libamanda.la \
350         $(top_builddir)/ndmp-src/libndmlib.la
351 Amanda_DATA += Amanda/NDMP.pm
352 MAINTAINERCLEANFILES += Amanda/NDMP.c Amanda/NDMP.pm
353 EXTRA_DIST += Amanda/NDMP.swg Amanda/NDMP.pm Amanda/NDMP.pod
354 endif
355
356 if WANT_SERVER
357 # PACKAGE: Amanda::XferServer
358 libXferServerdir = $(amperldir)/auto/Amanda/XferServer
359 libXferServer_LTLIBRARIES = libXferServer.la
360 libXferServer_la_SOURCES = Amanda/XferServer.c $(AMGLUE_SWG)
361 libXferServer_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
362 libXferServer_la_LIBADD = amglue/libamglue.la \
363         $(top_builddir)/server-src/libamserver.la
364 Amanda_DATA += Amanda/XferServer.pm
365 MAINTAINERCLEANFILES += Amanda/XferServer.c Amanda/XferServer.pm
366 EXTRA_DIST += Amanda/XferServer.swg Amanda/XferServer.pm Amanda/XferServer.pod
367 endif
368
369 if WANT_SERVER
370 # PACKAGE: Amanda::Report
371 Amanda_DATA += Amanda/Report.pm
372 EXTRA_DIST += Amanda/Report.pm
373 endif
374
375 if WANT_SERVER
376 # PACKAGE: Amanda::Report::*
377 AmandaReportdir = $(amperldir)/Amanda/Report
378 AmandaReport_DATA = \
379         Amanda/Report/xml.pm \
380         Amanda/Report/postscript.pm \
381         Amanda/Report/human.pm
382 PM_FILES += $(AmandaReport_DATA)
383 EXTRA_DIST += $(AmandaReport_DATA)
384 endif
385
386 # PACKAGE: Amanda::BigIntCompat
387 Amanda_DATA += Amanda/BigIntCompat.pm
388 EXTRA_DIST += Amanda/BigIntCompat.pm
389
390 # PACKAGE: Amanda::Debug
391 libDebugdir = $(amperldir)/auto/Amanda/Debug
392 libDebug_LTLIBRARIES = libDebug.la
393 libDebug_la_SOURCES = Amanda/Debug.c $(AMGLUE_SWG)
394 libDebug_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
395 libDebug_la_LIBADD = amglue/libamglue.la \
396         $(top_builddir)/common-src/libamanda.la
397 Amanda_DATA += Amanda/Debug.pm
398 EXTRA_DIST += Amanda/Debug.swg Amanda/Debug.pm Amanda/Debug.pod
399 MAINTAINERCLEANFILES += Amanda/Debug.c Amanda/Debug.pm
400
401 # PACKAGE: Amanda::Config
402 libConfigdir = $(amperldir)/auto/Amanda/Config
403 libConfig_LTLIBRARIES = libConfig.la
404 libConfig_la_SOURCES = Amanda/Config.c $(AMGLUE_SWG)
405 libConfig_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
406 libConfig_la_LIBADD = amglue/libamglue.la \
407         $(top_builddir)/common-src/libamanda.la
408 Amanda_DATA += Amanda/Config.pm
409 EXTRA_DIST += Amanda/Config.swg Amanda/Config.pm Amanda/Config.pod
410 MAINTAINERCLEANFILES += Amanda/Config.c Amanda/Config.pm
411
412 # PACKAGE: Amanda::Config::*
413 AmandaConfigdir = $(amperldir)/Amanda/Config
414 AmandaConfig_DATA = Amanda/Config/FoldingHash.pm
415 EXTRA_DIST += $(AmandaConfig_DATA)
416
417 # PACKAGE: Amanda::Util
418 libUtildir = $(amperldir)/auto/Amanda/Util
419 libUtil_LTLIBRARIES = libUtil.la
420 libUtil_la_SOURCES = Amanda/Util.c $(AMGLUE_SWG)
421 libUtil_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
422 libUtil_la_LIBADD = amglue/libamglue.la \
423         $(top_builddir)/common-src/libamanda.la
424 Amanda_DATA += Amanda/Util.pm
425 EXTRA_DIST += Amanda/Util.swg Amanda/Util.pm Amanda/Util.pod
426 MAINTAINERCLEANFILES += Amanda/Util.c Amanda/Util.pm
427
428 # PACKAGE: Amanda::Header
429 libHeaderdir = $(amperldir)/auto/Amanda/Header
430 libHeader_LTLIBRARIES = libHeader.la
431 libHeader_la_SOURCES = Amanda/Header.c $(AMGLUE_SWG)
432 libHeader_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
433 libHeader_la_LIBADD = amglue/libamglue.la \
434         $(top_builddir)/common-src/libamanda.la
435 Amanda_DATA += Amanda/Header.pm
436 EXTRA_DIST += Amanda/Header.swg Amanda/Header.pm Amanda/Header.pod
437 MAINTAINERCLEANFILES += Amanda/Header.c Amanda/Header.pm
438
439 # PACKAGE: Amanda::Tests
440 libTestsdir = $(amperldir)/auto/Amanda/Tests
441 libTests_LTLIBRARIES = libTests.la
442 libTests_la_SOURCES = Amanda/Tests.c $(AMGLUE_SWG)
443 libTests_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
444 libTests_la_LIBADD = amglue/libamglue.la \
445         $(top_builddir)/common-src/libamanda.la
446 Amanda_DATA += Amanda/Tests.pm
447 EXTRA_DIST += Amanda/Tests.swg Amanda/Tests.pm Amanda/Tests.pod
448 MAINTAINERCLEANFILES += Amanda/Tests.c Amanda/Tests.pm
449
450 # PACKAGE: Amanda::MainLoop
451 libMainLoopdir = $(amperldir)/auto/Amanda/MainLoop
452 libMainLoop_LTLIBRARIES = libMainLoop.la
453 libMainLoop_la_SOURCES = Amanda/MainLoop.c $(AMGLUE_SWG)
454 libMainLoop_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
455 libMainLoop_la_LIBADD = amglue/libamglue.la \
456         $(top_builddir)/common-src/libamanda.la
457 Amanda_DATA += Amanda/MainLoop.pm
458 EXTRA_DIST += Amanda/MainLoop.swg Amanda/MainLoop.pm Amanda/MainLoop.pod
459 MAINTAINERCLEANFILES += Amanda/MainLoop.c Amanda/MainLoop.pm
460
461 # PACKAGE: Amanda::IPC::*
462 AmandaIPCdir = $(amperldir)/Amanda/IPC
463 AmandaIPC_DATA = Amanda/IPC/LineProtocol.pm
464 PM_FILES += $(AmandaIPC_DATA)
465 EXTRA_DIST += $(AmandaIPC_DATA)
466
467 # PACKAGE: Amanda::IPC:Binary
468 libIPCBinarydir = $(amperldir)/auto/Amanda/IPC/Binary
469 libIPCBinary_LTLIBRARIES = libBinary.la
470 libBinary_la_SOURCES = Amanda/IPC/Binary.c $(AMGLUE_SWG)
471 libBinary_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
472 libBinary_la_LIBADD = amglue/libamglue.la \
473         $(top_builddir)/common-src/libamanda.la
474 AmandaIPC_DATA += Amanda/IPC/Binary.pm
475 EXTRA_DIST += Amanda/IPC/Binary.swg Amanda/IPC/Binary.pm Amanda/IPC/Binary.pod
476 MAINTAINERCLEANFILES += Amanda/IPC/Binary.c Amanda/IPC/Binary.pm
477
478 # PACKAGE: Amanda::Paths
479 Amanda_DATA += Amanda/Paths.pm
480 EXTRA_DIST += Amanda/Paths.pm.in
481 DISTCLEANFILES += Amanda/Paths.pm
482
483 # PACKAGE: Amanda::Constants
484 Amanda_DATA += Amanda/Constants.pm
485 EXTRA_DIST += Amanda/Constants.pm.in
486 DISTCLEANFILES += Amanda/Constants.pm
487
488 # PACKAGE: Amanda::Script_App
489 Amanda_DATA += Amanda/Script_App.pm
490 EXTRA_DIST += Amanda/Script_App.pm
491
492
493 if WANT_SERVER
494 # PACKAGE: Amanda::Holding
495 Amanda_DATA += Amanda/Holding.pm
496 endif
497 EXTRA_DIST += Amanda/Holding.pm
498
499 if WANT_CLIENT
500 # PACKAGE: Amanda::Application
501 libApplicationdir = $(amperldir)/auto/Amanda/Application
502 libApplication_LTLIBRARIES = libApplication.la
503 libApplication_la_SOURCES = Amanda/Application.c $(AMGLUE_SWG)
504 libApplication_la_LDFLAGS = $(PERL_EXT_LDFLAGS)
505 libApplication_la_LIBADD = amglue/libamglue.la \
506         $(top_builddir)/client-src/libamclient.la
507 Amanda_DATA += Amanda/Application.pm
508 MAINTAINERCLEANFILES += Amanda/Application.c Amanda/Application.pm
509 endif
510 EXTRA_DIST += Amanda/Application.swg Amanda/Application.pm Amanda/Application.pod
511
512 # PACKAGE: Amanda::Script
513 Amanda_DATA += Amanda/Script.pm
514 EXTRA_DIST += Amanda/Script.pm
515
516 if WANT_CLIENT
517 # PACKAGE: Amanda::Application::*
518 AmandaApplicationdir = $(amperldir)/Amanda/Application
519 AmandaApplication_DATA = Amanda/Application/Zfs.pm
520 PM_FILES += $(AmandaApplication_DATA)
521 endif
522 EXTRA_DIST += Amanda/Application/Zfs.pm
523
524 # perl doesn't use the cyg prefix and it doesn't search in the bin
525 # directory, dll must be copied to their modules directories.
526 if WANT_CYGWIN_COPY_PERL_DLL
527 amperldirauto="$(DESTDIR)$(amperldir)/auto/Amanda"
528 install-data-hook:
529         @for cygdll in $(wildcard $(amperldirauto)/bin/cyg*.dll); do \
530             destfname=`echo $$cygdll|sed 's!/bin/cyg\([^.]*\).dll!/\1/\1.dll!'`; \
531            cp "$$cygdll" "$$destfname"; \
532         done
533 endif
534
535 # only syntax-check the .pm files if SYNTAX_CHECKS are enabled
536 check-pm:
537         @MODULES_TO_CHECK="$(PM_FILES)"; \
538         if test -f $(top_builddir)/perl/.libs/libConfig.so -o -f $(top_builddir)/perl/libConfig.so; then \
539             for perlobj in $$MODULES_TO_CHECK; do \
540                 if test -f $$perlobj; then \
541                     $(PERL) $(CHECK_PERL_FLAGS) -I$(top_builddir)/perl -I$(top_builddir)/perl/.libs -I$(top_srcdir)/perl -c -T $$perlobj || exit 1; \
542                 else \
543                     $(PERL) $(CHECK_PERL_FLAGS) -I$(top_builddir)/perl -I$(top_builddir)/perl/.libs -I$(top_srcdir)/perl -c -T $(top_srcdir)/perl/$$perlobj || exit 1; \
544                 fi \
545             done; \
546         fi
547 if SYNTAX_CHECKS
548 check-local: check-pm
549 endif
550
551 if WANT_MANDATORY_THREAD_CHECK
552 install-data-local: thread-check
553 else
554 installcheck-local: thread-check
555 endif
556
557 if WANT_SERVER
558 thread-check: libTests.la
559         $(PERL) -I$(builddir) -I$(builddir)/.libs -I$(srcdir) \
560                         -MAmanda::Tests -e 'alarm(10); Amanda::Tests::try_threads' \
561         || { echo "Perl cannot run extensions which use threads; consider linking perl" \
562                 "with -pthread or compiling perl with threading enabled"; false; }
563 else
564 thread-check:
565         @echo "skipping thread check: server component not being built"
566 endif