|
rtfm / SQL / dbishell / src/Makefile
|
|
PERL=/usr/bin/perl INSTDIR=/usr/local/dbishell INSTLIBDIR= DEPEND_MODULES=DBI Term::ReadKey Term::ReadLine Getopt::Long BUNDLED_MODULES=DBIShell::Term_CTL \ DBIShell::UTIL \ DBIShell::Help \ DBIShell::Fixup \ DBIShell::Readline \ DBIShell \ Gtk::Icon \ Gtk::Symbols \ Gtk::Keybinding \ DBIShell::Gtk \ DBIShell::Gtk::main \ DBIShell::Gtk::conn \ all: test clean: rm -f ./.cf.cache test: dependencies drivers helpers @echo @$(PERL) -Mlib=. -cw ./dbishell @$(PERL) -Mlib=. -cw ./dbigtk dependencies: bundled-modules @echo @echo "Checking basic Perl module dependencies" @for M in $(DEPEND_MODULES); do $(PERL) \ -e "use $$M;" \ -e "printf(STDOUT qq[%-20.20s\tOk\\n], '$$M')"; \ done bundled-modules: perl-readline @echo @echo "Checking bundled DBIShell modules" @for M in $(BUNDLED_MODULES); do $(PERL) -I. \ -e "(\$$m = $$M) =~ s(::)(/)g;" \ -e '$$m = join(".",$$m,"pm");' \ -e 'require $$m;' \ -e "printf(STDOUT qq[%-20.20s\tOk\\n], '$$M')"; \ done perl-readline: @echo @echo "Looking for supported readline implementation" @$(PERL) -MTerm::ReadLine \ -MFcntl \ -e 'if ( !-t(STDOUT) && -c("/dev/ptmx") )' \ -e '{' \ -e ' require "sys/ioctl.ph";' \ -e ' my $$ptn = 0;' \ -e ' my $$unl = 0;' \ -e ' sysopen(PTMX, "/dev/ptmx", O_RDWR|O_NDELAY);' \ -e ' ioctl(PTMX, TIOCSPTLCK, $$unl);' \ -e ' ioctl(PTMX, TIOCGPTN, $$ptn);' \ -e ' sysopen(TTY, "/dev/pts/".$$ptn, O_RDWR)' \ -e ' ||die("i", $$!, "\n");' \ -e '}' \ -e 'else { *TTY = *STDIN }' \ -e '$$x = Term::ReadLine->new("X", *TTY, *TTY)->ReadLine();' \ -e 'print(STDOUT "readline == $$x\n");' \ -e '$$x =~ /^Term::ReadLine::(?:Gnu|Perl)$$/' \ -e ' || die("Must have Term::ReadLine::(Gnu|Perl)\n");' drivers: @echo @echo "Checking included DB drivers" @for dr in DBIShell/dr/*.pm; \ do $(PERL) -I. \ -e '$$DR = shift;' \ -e '$$DR =~ m</([^/]+).pm$$>;' \ -e '$$MN = $$1;' \ -e 'require $$DR;' \ -e 'printf(STDOUT qq[DBIShell::dr::%-5s\tOk\n], $$MN)' \ $$dr; \ done helpers: @echo @echo "Checking included help modules" @for help in DBIShell/help/*.pm; \ do $(PERL) -I. \ -e '$$DR = shift;' \ -e '$$DR =~ m</([^/]+).pm$$>;' \ -e '$$MN = $$1;' \ -e 'require $$DR;' \ -e 'printf(STDOUT qq[DBIShell::help::%5s\tOk\n], $$MN)' \ $$help; \ done install: test @$(PERL) ./installer.pl $(PERL) $(INSTDIR) $(INSTLIBDIR) # @echo "./installer.pl $(PERL) $(INSTDIR) $(INSTLIBDIR)" |
|
|
|