1## 2## Prepare for SWIGging 3## 4 5include $(top_srcdir)/config/automake/vars.am 6include $(top_srcdir)/config/automake/scripts.am 7 8# build amglue *first* 9SUBDIRS = 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. 14AM_CFLAGS = -DSWIG $(AMANDA_SWIG_PERL_CFLAGS) 15 16# Appropriate INCLUDES depends on which components (server or client) are 17# being built 18INCLUDES = \ 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 29if WANT_SERVER 30INCLUDES += -I$(top_srcdir)/device-src \ 31 -I$(top_srcdir)/server-src 32endif 33 34if WANT_CLIENT 35INCLUDES += -I$(top_srcdir)/client-src 36endif 37 38if WANT_RECOVER 39INCLUDES += -I$(top_srcdir)/recover-src 40endif 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 53html: 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. 65PERL_EXT_LDFLAGS = -avoid-version -shared 66 67# And add any flags the user has requested; on FreeBSD, this pulls in the 68# threading library 69PERL_EXT_LDFLAGS += $(PERLEXTLIBS) 70 71# list our SWIG libraries; these are %included from .swg files 72AMGLUE_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 81EXTRA_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 88SWIG_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. 110PM_FILES= 111 112Amandadir=$(amperldir)/Amanda 113Amanda_DATA = 114PM_FILES += $(Amanda_DATA) 115 116# PACKAGE: Amanda::Archive 117libArchivedir = $(amperldir)/auto/Amanda/Archive 118libArchive_LTLIBRARIES = libArchive.la 119libArchive_la_SOURCES = Amanda/Archive.c $(AMGLUE_SWG) 120libArchive_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 121libArchive_la_LIBADD = amglue/libamglue.la \ 122 $(top_builddir)/amar-src/libamar.la \ 123 $(top_builddir)/common-src/libamanda.la 124Amanda_DATA += Amanda/Archive.pm 125EXTRA_DIST += Amanda/Archive.swg Amanda/Archive.pm Amanda/Archive.pod 126MAINTAINERCLEANFILES += Amanda/Archive.c Amanda/Archive.pm 127 128# PACKAGE: Amanda::Process 129Amanda_DATA += Amanda/Process.pm 130EXTRA_DIST += Amanda/Process.pm 131 132if WANT_SERVER 133# PACKAGE: Amanda::Device 134libDevicedir = $(amperldir)/auto/Amanda/Device 135libDevice_LTLIBRARIES = libDevice.la 136libDevice_la_SOURCES = Amanda/Device.c $(AMGLUE_SWG) 137libDevice_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 138libDevice_la_LIBADD = amglue/libamglue.la \ 139 $(top_builddir)/device-src/libamdevice.la \ 140 $(top_builddir)/common-src/libamanda.la 141Amanda_DATA += Amanda/Device.pm 142MAINTAINERCLEANFILES += Amanda/Device.c Amanda/Device.pm 143endif 144EXTRA_DIST += Amanda/Device.swg Amanda/Device.pm Amanda/Device.pod 145 146if WANT_SERVER 147# PACKAGE: Amanda::Logfile 148libLogfiledir = $(amperldir)/auto/Amanda/Logfile 149libLogfile_LTLIBRARIES = libLogfile.la 150libLogfile_la_SOURCES = Amanda/Logfile.c $(AMGLUE_SWG) 151libLogfile_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 152libLogfile_la_LIBADD = amglue/libamglue.la \ 153 $(top_builddir)/server-src/libamserver.la \ 154 $(top_builddir)/common-src/libamanda.la 155Amanda_DATA += Amanda/Logfile.pm 156MAINTAINERCLEANFILES += Amanda/Logfile.c Amanda/Logfile.pm 157endif 158EXTRA_DIST += Amanda/Logfile.swg Amanda/Logfile.pm Amanda/Logfile.pod 159 160if WANT_SERVER 161# PACKAGE: Amanda::Cmdline 162libCmdlinedir = $(amperldir)/auto/Amanda/Cmdline 163libCmdline_LTLIBRARIES = libCmdline.la 164libCmdline_la_SOURCES = Amanda/Cmdline.c $(AMGLUE_SWG) 165libCmdline_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 166libCmdline_la_LIBADD = amglue/libamglue.la \ 167 $(top_builddir)/server-src/libamserver.la \ 168 $(top_builddir)/common-src/libamanda.la 169Amanda_DATA += Amanda/Cmdline.pm 170MAINTAINERCLEANFILES += Amanda/Cmdline.c Amanda/Cmdline.pm 171endif 172EXTRA_DIST += Amanda/Cmdline.swg Amanda/Cmdline.pm Amanda/Cmdline.pod 173 174if WANT_SERVER 175# PACKAGE: Amanda::Tapelist 176libTapelistdir = $(amperldir)/auto/Amanda/Tapelist 177libTapelist_LTLIBRARIES = libTapelist.la 178libTapelist_la_SOURCES = Amanda/Tapelist.c $(AMGLUE_SWG) 179libTapelist_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 180libTapelist_la_LIBADD = amglue/libamglue.la \ 181 $(top_builddir)/server-src/libamserver.la \ 182 $(top_builddir)/common-src/libamanda.la 183Amanda_DATA += Amanda/Tapelist.pm 184MAINTAINERCLEANFILES += Amanda/Tapelist.c Amanda/Tapelist.pm 185endif 186EXTRA_DIST += Amanda/Tapelist.swg Amanda/Tapelist.pm Amanda/Tapelist.pod 187 188if WANT_SERVER 189# PACKAGE: Amanda::Disklist 190libDisklistdir = $(amperldir)/auto/Amanda/Disklist 191libDisklist_LTLIBRARIES = libDisklist.la 192libDisklist_la_SOURCES = Amanda/Disklist.c $(AMGLUE_SWG) 193libDisklist_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 194libDisklist_la_LIBADD = amglue/libamglue.la \ 195 $(top_builddir)/server-src/libamserver.la \ 196 $(top_builddir)/common-src/libamanda.la 197Amanda_DATA += Amanda/Disklist.pm 198MAINTAINERCLEANFILES += Amanda/Disklist.c Amanda/Disklist.pm 199endif 200EXTRA_DIST += Amanda/Disklist.swg Amanda/Disklist.pm Amanda/Disklist.pod 201 202# PACKAGE: Amanda::Feature 203Amanda/Feature.pm: ../common-src/amfeatures.h 204libFeaturedir = $(amperldir)/auto/Amanda/Feature 205libFeature_LTLIBRARIES = libFeature.la 206libFeature_la_SOURCES = Amanda/Feature.c $(AMGLUE_SWG) 207libFeature_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 208libFeature_la_LIBADD = amglue/libamglue.la \ 209 $(top_builddir)/common-src/libamanda.la 210Amanda_DATA += Amanda/Feature.pm 211MAINTAINERCLEANFILES += Amanda/Feature.c Amanda/Feature.pm 212EXTRA_DIST += Amanda/Feature.swg Amanda/Feature.pm Amanda/Feature.pod 213 214if WANT_SERVER 215# PACKAGE: Amanda::ScanInventory 216Amanda_DATA += Amanda/ScanInventory.pm 217endif 218EXTRA_DIST += Amanda/ScanInventory.pm 219 220if WANT_SERVER 221# PACKAGE: Amanda::Interactivity 222Amanda_DATA += Amanda/Interactivity.pm 223endif 224EXTRA_DIST += Amanda/Interactivity.pm 225 226# PACKAGE: Amanda::ClientService 227Amanda_DATA += Amanda/ClientService.pm 228EXTRA_DIST += Amanda/ClientService.pm 229 230if WANT_SERVER 231# PACKAGE: Amanda::Interactivity::* 232AmandaInteractivitydir = $(amperldir)/Amanda/Interactivity 233AmandaInteractivity_DATA = \ 234 Amanda/Interactivity/email.pm \ 235 Amanda/Interactivity/stdin.pm \ 236 Amanda/Interactivity/tty.pm \ 237 Amanda/Interactivity/tty_email.pm 238endif 239PM_FILES += $(AmandaInteractivity_DATA) 240EXTRA_DIST += $(AmandaInteractivity_DATA) 241 242if WANT_SERVER 243# PACKAGE: Amanda::Changer 244Amanda_DATA += Amanda/Changer.pm 245endif 246EXTRA_DIST += Amanda/Changer.pm 247 248if WANT_SERVER 249# PACKAGE: Amanda::Changer::* 250AmandaChangerdir = $(amperldir)/Amanda/Changer 251AmandaChanger_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 261if WANT_NDMP 262AmandaChanger_DATA += Amanda/Changer/ndmp.pm 263endif 264PM_FILES += $(AmandaChanger_DATA) 265endif 266EXTRA_DIST += $(AmandaChanger_DATA) 267 268if WANT_SERVER 269# PACKAGE: Amanda::Curinfo 270Amanda_DATA += Amanda/Curinfo.pm 271endif 272EXTRA_DIST += Amanda/Curinfo.pm 273 274if WANT_SERVER 275# PACKAGE: Amanda::Curinfo::* 276AmandaCurinfodir = $(amperldir)/Amanda/Curinfo 277AmandaCurinfo_DATA = \ 278 Amanda/Curinfo/Info.pm 279PM_FILES += $(AmandaCurinfo_DATA) 280endif 281EXTRA_DIST += $(AmandaCurinfo_DATA) 282 283if WANT_SERVER 284# PACKAGE: Amanda::Recovery::* 285AmandaRecoverydir = $(amperldir)/Amanda/Recovery 286AmandaRecovery_DATA = \ 287 Amanda/Recovery/Clerk.pm \ 288 Amanda/Recovery/Planner.pm \ 289 Amanda/Recovery/Scan.pm 290PM_FILES += $(AmandaRecovery_DATA) 291endif 292EXTRA_DIST += $(AmandaRecovery_DATA) 293 294if WANT_SERVER 295# PACKAGE: Amanda::Taper::* 296AmandaTaperdir = $(amperldir)/Amanda/Taper 297AmandaTaper_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 303PM_FILES += $(AmandaTaper_DATA) 304endif 305EXTRA_DIST += $(AmandaTaper_DATA) 306 307if WANT_SERVER 308# PACKAGE: Amanda::Taper::Scan::* 309AmandaTaperScandir = $(amperldir)/Amanda/Taper/Scan 310AmandaTaperScan_DATA = \ 311 Amanda/Taper/Scan/lexical.pm \ 312 Amanda/Taper/Scan/oldest.pm \ 313 Amanda/Taper/Scan/traditional.pm 314PM_FILES += $(AmandaTaperScan_DATA) 315endif 316EXTRA_DIST += $(AmandaTaperScan_DATA) 317 318if WANT_SERVER 319# PACKAGE: Amanda::DB::* 320Amanda_DBdir = $(Amandadir)/DB 321Amanda_DB_DATA = 322PM_FILES += $(Amanda_DB_DATA) 323endif 324 325if WANT_SERVER 326# PACKAGE: Amanda::DB::Catalog 327Amanda_DB_DATA += Amanda/DB/Catalog.pm 328endif 329EXTRA_DIST += Amanda/DB/Catalog.pm 330 331# PACKAGE: Amanda::Xfer 332libXferdir = $(amperldir)/auto/Amanda/Xfer 333libXfer_LTLIBRARIES = libXfer.la 334libXfer_la_SOURCES = Amanda/Xfer.c $(AMGLUE_SWG) 335libXfer_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 336libXfer_la_LIBADD = amglue/libamglue.la \ 337 $(top_builddir)/xfer-src/libamxfer.la 338Amanda_DATA += Amanda/Xfer.pm 339MAINTAINERCLEANFILES += Amanda/Xfer.c Amanda/Xfer.pm 340EXTRA_DIST += Amanda/Xfer.swg Amanda/Xfer.pm Amanda/Xfer.pod 341 342if WANT_NDMP 343# PACKAGE: Amanda::NDMP 344libNDMPdir = $(amperldir)/auto/Amanda/NDMP 345libNDMP_LTLIBRARIES = libNDMP.la 346libNDMP_la_SOURCES = Amanda/NDMP.c $(AMGLUE_SWG) 347libNDMP_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 348libNDMP_la_LIBADD = amglue/libamglue.la \ 349 $(top_builddir)/common-src/libamanda.la \ 350 $(top_builddir)/ndmp-src/libndmlib.la 351Amanda_DATA += Amanda/NDMP.pm 352MAINTAINERCLEANFILES += Amanda/NDMP.c Amanda/NDMP.pm 353EXTRA_DIST += Amanda/NDMP.swg Amanda/NDMP.pm Amanda/NDMP.pod 354endif 355 356if WANT_SERVER 357# PACKAGE: Amanda::XferServer 358libXferServerdir = $(amperldir)/auto/Amanda/XferServer 359libXferServer_LTLIBRARIES = libXferServer.la 360libXferServer_la_SOURCES = Amanda/XferServer.c $(AMGLUE_SWG) 361libXferServer_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 362libXferServer_la_LIBADD = amglue/libamglue.la \ 363 $(top_builddir)/server-src/libamserver.la 364Amanda_DATA += Amanda/XferServer.pm 365MAINTAINERCLEANFILES += Amanda/XferServer.c Amanda/XferServer.pm 366EXTRA_DIST += Amanda/XferServer.swg Amanda/XferServer.pm Amanda/XferServer.pod 367endif 368 369if WANT_SERVER 370# PACKAGE: Amanda::Report 371Amanda_DATA += Amanda/Report.pm 372EXTRA_DIST += Amanda/Report.pm 373endif 374 375if WANT_SERVER 376# PACKAGE: Amanda::Report::* 377AmandaReportdir = $(amperldir)/Amanda/Report 378AmandaReport_DATA = \ 379 Amanda/Report/human.pm \ 380 Amanda/Report/json.pm \ 381 Amanda/Report/json_raw.pm \ 382 Amanda/Report/postscript.pm \ 383 Amanda/Report/xml.pm 384PM_FILES += $(AmandaReport_DATA) 385EXTRA_DIST += $(AmandaReport_DATA) 386endif 387 388# PACKAGE: Amanda::BigIntCompat 389Amanda_DATA += Amanda/BigIntCompat.pm 390EXTRA_DIST += Amanda/BigIntCompat.pm 391 392# PACKAGE: Amanda::Debug 393libDebugdir = $(amperldir)/auto/Amanda/Debug 394libDebug_LTLIBRARIES = libDebug.la 395libDebug_la_SOURCES = Amanda/Debug.c $(AMGLUE_SWG) 396libDebug_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 397libDebug_la_LIBADD = amglue/libamglue.la \ 398 $(top_builddir)/common-src/libamanda.la 399Amanda_DATA += Amanda/Debug.pm 400EXTRA_DIST += Amanda/Debug.swg Amanda/Debug.pm Amanda/Debug.pod 401MAINTAINERCLEANFILES += Amanda/Debug.c Amanda/Debug.pm 402 403# PACKAGE: Amanda::Config 404libConfigdir = $(amperldir)/auto/Amanda/Config 405libConfig_LTLIBRARIES = libConfig.la 406libConfig_la_SOURCES = Amanda/Config.c $(AMGLUE_SWG) 407libConfig_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 408libConfig_la_LIBADD = amglue/libamglue.la \ 409 $(top_builddir)/common-src/libamanda.la 410Amanda_DATA += Amanda/Config.pm 411EXTRA_DIST += Amanda/Config.swg Amanda/Config.pm Amanda/Config.pod 412MAINTAINERCLEANFILES += Amanda/Config.c Amanda/Config.pm 413 414# PACKAGE: Amanda::Config::* 415AmandaConfigdir = $(amperldir)/Amanda/Config 416AmandaConfig_DATA = Amanda/Config/FoldingHash.pm 417EXTRA_DIST += $(AmandaConfig_DATA) 418 419# PACKAGE: Amanda::Util 420libUtildir = $(amperldir)/auto/Amanda/Util 421libUtil_LTLIBRARIES = libUtil.la 422libUtil_la_SOURCES = Amanda/Util.c $(AMGLUE_SWG) 423libUtil_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 424libUtil_la_LIBADD = amglue/libamglue.la \ 425 $(top_builddir)/common-src/libamanda.la 426Amanda_DATA += Amanda/Util.pm 427EXTRA_DIST += Amanda/Util.swg Amanda/Util.pm Amanda/Util.pod 428MAINTAINERCLEANFILES += Amanda/Util.c Amanda/Util.pm 429 430# PACKAGE: Amanda::Header 431libHeaderdir = $(amperldir)/auto/Amanda/Header 432libHeader_LTLIBRARIES = libHeader.la 433libHeader_la_SOURCES = Amanda/Header.c $(AMGLUE_SWG) 434libHeader_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 435libHeader_la_LIBADD = amglue/libamglue.la \ 436 $(top_builddir)/common-src/libamanda.la 437Amanda_DATA += Amanda/Header.pm 438EXTRA_DIST += Amanda/Header.swg Amanda/Header.pm Amanda/Header.pod 439MAINTAINERCLEANFILES += Amanda/Header.c Amanda/Header.pm 440 441# PACKAGE: Amanda::Tests 442libTestsdir = $(amperldir)/auto/Amanda/Tests 443libTests_LTLIBRARIES = libTests.la 444libTests_la_SOURCES = Amanda/Tests.c $(AMGLUE_SWG) 445libTests_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 446libTests_la_LIBADD = amglue/libamglue.la \ 447 $(top_builddir)/common-src/libamanda.la 448Amanda_DATA += Amanda/Tests.pm 449EXTRA_DIST += Amanda/Tests.swg Amanda/Tests.pm Amanda/Tests.pod 450MAINTAINERCLEANFILES += Amanda/Tests.c Amanda/Tests.pm 451 452# PACKAGE: Amanda::MainLoop 453libMainLoopdir = $(amperldir)/auto/Amanda/MainLoop 454libMainLoop_LTLIBRARIES = libMainLoop.la 455libMainLoop_la_SOURCES = Amanda/MainLoop.c $(AMGLUE_SWG) 456libMainLoop_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 457libMainLoop_la_LIBADD = amglue/libamglue.la \ 458 $(top_builddir)/common-src/libamanda.la 459Amanda_DATA += Amanda/MainLoop.pm 460EXTRA_DIST += Amanda/MainLoop.swg Amanda/MainLoop.pm Amanda/MainLoop.pod 461MAINTAINERCLEANFILES += Amanda/MainLoop.c Amanda/MainLoop.pm 462 463# PACKAGE: Amanda::IPC::* 464AmandaIPCdir = $(amperldir)/Amanda/IPC 465AmandaIPC_DATA = Amanda/IPC/LineProtocol.pm 466PM_FILES += $(AmandaIPC_DATA) 467EXTRA_DIST += $(AmandaIPC_DATA) 468 469# PACKAGE: Amanda::IPC:Binary 470libIPCBinarydir = $(amperldir)/auto/Amanda/IPC/Binary 471libIPCBinary_LTLIBRARIES = libBinary.la 472libBinary_la_SOURCES = Amanda/IPC/Binary.c $(AMGLUE_SWG) 473libBinary_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 474libBinary_la_LIBADD = amglue/libamglue.la \ 475 $(top_builddir)/common-src/libamanda.la 476AmandaIPC_DATA += Amanda/IPC/Binary.pm 477EXTRA_DIST += Amanda/IPC/Binary.swg Amanda/IPC/Binary.pm Amanda/IPC/Binary.pod 478MAINTAINERCLEANFILES += Amanda/IPC/Binary.c Amanda/IPC/Binary.pm 479 480# PACKAGE: Amanda::Paths 481Amanda_DATA += Amanda/Paths.pm 482EXTRA_DIST += Amanda/Paths.pm.in 483DISTCLEANFILES += Amanda/Paths.pm 484 485# PACKAGE: Amanda::Constants 486Amanda_DATA += Amanda/Constants.pm 487EXTRA_DIST += Amanda/Constants.pm.in 488DISTCLEANFILES += Amanda/Constants.pm 489 490# PACKAGE: Amanda::Script_App 491Amanda_DATA += Amanda/Script_App.pm 492EXTRA_DIST += Amanda/Script_App.pm 493 494# PACKAGE: Amanda::Extract 495Amanda_DATA += Amanda/Extract.pm 496EXTRA_DIST += Amanda/Extract.pm 497 498# PACKAGE: Amanda::Message 499Amanda_DATA += Amanda/Message.pm 500EXTRA_DIST += Amanda/Message.pm 501 502if WANT_SERVER 503# PACKAGE: Amanda::Holding 504Amanda_DATA += Amanda/Holding.pm 505endif 506EXTRA_DIST += Amanda/Holding.pm 507 508if WANT_CLIENT 509# PACKAGE: Amanda::Application 510libApplicationdir = $(amperldir)/auto/Amanda/Application 511libApplication_LTLIBRARIES = libApplication.la 512libApplication_la_SOURCES = Amanda/Application.c $(AMGLUE_SWG) 513libApplication_la_LDFLAGS = $(PERL_EXT_LDFLAGS) 514libApplication_la_LIBADD = amglue/libamglue.la \ 515 $(top_builddir)/client-src/libamclient.la 516Amanda_DATA += Amanda/Application.pm 517MAINTAINERCLEANFILES += Amanda/Application.c Amanda/Application.pm 518endif 519EXTRA_DIST += Amanda/Application.swg Amanda/Application.pm Amanda/Application.pod 520 521# PACKAGE: Amanda::Script 522Amanda_DATA += Amanda/Script.pm 523EXTRA_DIST += Amanda/Script.pm 524 525if WANT_CLIENT 526# PACKAGE: Amanda::Application::* 527AmandaApplicationdir = $(amperldir)/Amanda/Application 528AmandaApplication_DATA = Amanda/Application/Zfs.pm 529PM_FILES += $(AmandaApplication_DATA) 530endif 531EXTRA_DIST += Amanda/Application/Zfs.pm 532 533# perl doesn't use the cyg prefix and it doesn't search in the bin 534# directory, dll must be copied to their modules directories. 535if WANT_CYGWIN_COPY_PERL_DLL 536amperldirauto="$(DESTDIR)$(amperldir)/auto/Amanda" 537install-data-hook: 538 @for cygdll in $(wildcard $(amperldirauto)/bin/cyg*.dll); do \ 539 destfname=`echo $$cygdll|sed 's!/bin/cyg\([^.]*\).dll!/\1/\1.dll!'`; \ 540 cp "$$cygdll" "$$destfname"; \ 541 done 542endif 543 544# only syntax-check the .pm files if SYNTAX_CHECKS are enabled 545check-pm: 546 @MODULES_TO_CHECK="$(PM_FILES)"; \ 547 if test -f $(top_builddir)/perl/.libs/libConfig.so -o -f $(top_builddir)/perl/libConfig.so; then \ 548 for perlobj in $$MODULES_TO_CHECK; do \ 549 if test -f $$perlobj; then \ 550 $(PERL) $(CHECK_PERL_FLAGS) -I$(top_builddir)/perl -I$(top_builddir)/perl/.libs -I$(top_srcdir)/perl -c -T $$perlobj || exit 1; \ 551 else \ 552 $(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; \ 553 fi \ 554 done; \ 555 fi 556if SYNTAX_CHECKS 557check-local: check-pm 558endif 559 560if WANT_MANDATORY_THREAD_CHECK 561install-data-local: thread-check 562else 563installcheck-local: thread-check 564endif 565 566if WANT_SERVER 567thread-check: libTests.la 568 $(PERL) -I$(builddir) -I$(builddir)/.libs -I$(srcdir) \ 569 -MAmanda::Tests -e 'alarm(10); Amanda::Tests::try_threads' \ 570 || { echo "Perl cannot run extensions which use threads; consider linking perl" \ 571 "with -pthread or compiling perl with threading enabled"; false; } 572else 573thread-check: 574 @echo "skipping thread check: server component not being built" 575endif 576