ports/82289: New Port: sysutils/p5-Sys-Mknod cpan perl module Sys::Mknod
Jim Pirzyk
jim at pirzyk.org
Thu Jun 16 04:50:19 UTC 2005
The following reply was made to PR ports/82289; it has been noted by GNATS.
From: Jim Pirzyk <jim at pirzyk.org>
To: pirzyk at freebsd.org, bug-followup at freebsd.org
Cc:
Subject: Re: ports/82289: New Port: sysutils/p5-Sys-Mknod cpan perl module Sys::Mknod
Date: Wed, 15 Jun 2005 23:42:33 -0500
I should have 'make test' before I submitted the port. There
should be a dependency on File::Stat::Bits as well listed
in the Makefile:
BUILD_DEPENDS=
${SITE_PERL}/File/Stat/Bits.pm:${PORTSDIR}/sysutils/p5-File-Stat-Bits
RUN_DEPENDS= ${BUILD_DEPENDS}
Here is a patch to allow 'make test' to work:
--- ./Mknod.pm.orig Wed Jun 15 23:30:29 2005
+++ ./Mknod.pm Wed Jun 15 23:33:21 2005
@@ -48,11 +48,11 @@
# obliviates the beneifit of avoiding a system(). See if I care.
{
local $^W = 0;
-require "sys/sysmacros.ph";
require "sys/types.ph";
require "sys/syscall.ph";
}
use Fcntl qw(S_IFCHR S_IFIFO S_IFBLK);
+use File::Stat::Bits qw(dev_join);
# I'm exporting all these functions for DWIM's sake.
our @EXPORT = qw(mknod mkfifo);
@@ -70,15 +70,13 @@
$mode |= S_IFBLK;
} elsif ($type =~ m/^c/i) {
$mode |= S_IFCHR;
- } elsif ($type =~ m/^f/i) {
- $mode |= S_IFIFO;
} else {
croak ("Invalid special file type `$type'");
}
my $return = syscall( &SYS_mknod, $filename, $mode,
( defined $major
- ? makedev($major, $minor)
+ ? dev_join($major, $minor)
: 0 ) );
if ($return < 0) {
die $!;
@@ -90,13 +88,20 @@
sub mkfifo($;$) {
my ($filename, $mode) = (@_);
- mknod($filename, "fifo", undef, undef, $mode);
+ $mode = 0666 unless defined $mode;
+
+ my $return = syscall( &SYS_mkfifo, $filename, $mode);
+ if ($return < 0) {
+ die $!;
+ } else {
+ return 1;
+ }
}
sub make_dev($$) {
my ($major, $minor) = (@_);
- return makedev($major, $minor);
+ return dev_join($major, $minor);
}
1;
--- ./Makefile.PL.orig Wed Jun 15 23:32:35 2005
+++ ./Makefile.PL Wed Jun 15 23:32:12 2005
@@ -4,7 +4,7 @@
WriteMakefile(
'NAME' => 'Sys::Mknod',
'VERSION_FROM' => 'Mknod.pm', # finds $VERSION
- 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1
+ 'PREREQ_PM' => { File::Stat::Bits }, # e.g.,
Module::Name => 1.1
($] >= 5.005 ? ## Add these new keywords supported since 5.005
(ABSTRACT_FROM => 'Mknod.pm', # retrieve abstract from module
AUTHOR => 'Sam Vilain <sam at vilain.net>') : ()),
--- @(#) $Id: dot.signature,v 1.14 2004/02/03 02:46:26 pirzyk Exp $
__o pirzyk at uiuc.edu --------------------------- jim at pirzyk.org
_'\<,_ Systems Management Group, CITES
(*)/ (*) University of Illinois at Urbana-Champaign
More information about the freebsd-ports-bugs
mailing list