1use ExtUtils::MakeMaker; 2eval 'use ExtUtils::MakeMaker::Coverage'; 3require 5.006; 4 5WriteMakefile( 6 NAME => 'Sys::Syslog', 7 VERSION_FROM => 'Syslog.pm', 8 ABSTRACT_FROM => 'Syslog.pm', 9 INSTALLDIRS => 'perl', 10 MAN3PODS => {}, # Pods will be built by installman. 11 XSPROTOARG => '-noprototypes', 12 PREREQ_PM => { 13 'Test::More' => 0, 14 'XSLoader' => 0, 15 }, 16 dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, 17 clean => { FILES => 'Sys-Syslog-*' }, 18 realclean => { FILES => 'const-c.inc const-xs.inc macros.all' }, 19); 20 21my $_PATH_LOG; 22 23if (-S "/dev/log" && -w "/dev/log") { 24 # Most unixes have a unix domain socket /dev/log. 25 $_PATH_LOG = "/dev/log"; 26} elsif (-c "/dev/conslog" && -w "/dev/conslog") { 27 # SunOS 5.8 has a worldwritable /dev/conslog STREAMS log driver. 28 # The /dev/log STREAMS log driver on this platform has permissions 29 # and ownership `crw-r----- root sys'. /dev/conslog has more liberal 30 # permissions. 31 $_PATH_LOG = "/dev/conslog"; 32} else { 33 $_PATH_LOG = ""; 34} 35 36if(eval {require ExtUtils::Constant; 1}) { 37 my @names = (qw( LOG_ALERT LOG_AUTH LOG_AUTHPRIV LOG_CONS LOG_CRIT LOG_CRON 38 LOG_DAEMON LOG_DEBUG LOG_EMERG LOG_ERR LOG_FACMASK LOG_FTP 39 LOG_INFO LOG_KERN LOG_LFMT LOG_LOCAL0 LOG_LOCAL1 LOG_LOCAL2 40 LOG_LOCAL3 LOG_LOCAL4 LOG_LOCAL5 LOG_LOCAL6 LOG_LOCAL7 LOG_LPR 41 LOG_MAIL LOG_NDELAY LOG_NEWS LOG_NFACILITIES LOG_NOTICE 42 LOG_NOWAIT LOG_ODELAY LOG_PERROR LOG_PID LOG_PRIMASK LOG_SYSLOG 43 LOG_USER LOG_UUCP LOG_WARNING), 44 { name => "_PATH_LOG", type => "PV", default => [ "PV", qq("$_PATH_LOG") ] }, 45 ); 46 47 ExtUtils::Constant::WriteConstants( 48 ($] > 5.009002 ? (PROXYSUBS => 1) : ()), 49 NAME => 'Sys::Syslog', 50 NAMES => \@names, 51 ); 52 53 open(MACROS, '>macros.all') or warn "can't write 'macros.all': $!\n"; 54 print MACROS join $/, grep {!ref} @names; 55 close(MACROS); 56 57} else { 58 use File::Copy; 59 use File::Spec; 60 foreach my $file ('const-c.inc', 'const-xs.inc') { 61 my $fallback = File::Spec->catfile('fallback', $file); 62 copy ($fallback, $file) or die "Can't copy $fallback to $ $!"; 63 } 64} 65