Re: Still no XFree86-4

2002-07-22 Thread Sheldon Hearn

On (2002/07/21 21:08), Eric Anholt wrote:

 You don't have XFree86-4 uninstalled, or don't have it uninstalled
 successfully.  Just removing the XFree86-4 metaport doesn't remove the
 miniports that contain the actual files.  If you are going to build
 without using portupgrade, you should start from scratch wrt XFree86
 (all XFree86-4 ports uninstalled along with imake-4).

I find the situation with the XFree86-4 metaports annoying, so allow me
to share my portdeps solution.

I use this perl script to build all dependencies of a port, in the
correct order, before building the port itself.

I use /usr/ports/makefile as follows:

| MY_STUFF?=\
|   archivers/unzip \
|   ...
|   x11/XFree86-4 \
|   ...
|   x11/xlockmore
| 
| MY_FULL_LIST!=  ${.CURDIR}/Tools/portdeps ${MY_STUFF}
| SUBDIR?=  ${MY_FULL_LIST}
| 
| update:
|   cvs -qR update -dPA ${SUBDIR}
| 
| .include bsd.port.subdir.mk

The script /usr/ports/Tools/portdeps is attached.  I wrote it in a hurry
ages ago, so it's probably a little sucky.

Then, I can do this to build all the ports I want, along with all their
dependencies, in the correct order:

cd /usr/ports
make install
make clean

Or, I can just build one particular port, with all its dependencies, in
the correct order:

cd /usr/ports
make MY_STUFF=x11/XFree86-4

Ciao,
Sheldon.


#!/usr/bin/perl -w
#
# Takes one or more port name arguments, each consisting of the name of a
# port, preceded by its primary category and a forward slash, e.g.
#
#   databases/gnats
#
# EXAMPLE:
#
#   cd /usr/ports
#   portdeps `make -f ./makefile -V SUBDIR`
#
use strict;

my $PROGNAME = 'portdeps';

my %desired;
my %required_by;
my %mustbuild;
my %seen;
my %unresolved;
my buildlist;
my $basedir;
my $loop_prot;
my $deps_only;

$basedir = `pwd`;
chomp $basedir;

if (defined($ARGV[0]) and $ARGV[0] eq '-d') {
$deps_only = 1;
shift ARGV;
}

foreach (ARGV) {
$unresolved{$_} = 1;
$desired{$_} = 1;
}

$loop_prot = 100;
while (keys %unresolved and $loop_prot--) {
foreach my $port (keys %unresolved) {
my (index_parts, $make_out, prereqs);

next if $seen{$port}++;

$mustbuild{$port} = 1;
delete $unresolved{$port};
chdir($basedir) or
die $PROGNAME: chdir: $basedir: $!\n;
chdir($port) or
die $PROGNAME: chdir: $port: $!\n;
$make_out = `make describe`;
if ($?) {
die $PROGNAME can't make describe: $port\n;
}
index_parts = split(/\|/, $make_out);
$index_parts[1] =~ /([^\/]+\/[^\/]+)$/;
$port = $1;
prereqs = split(' ', $index_parts[7] $index_parts[8]);
foreach my $req_path (prereqs) {
my $req;

$req_path =~ /([^\/]+\/[^\/]+)$/;
$req = $1;
if (exists $required_by{$req}) {
push({$required_by{$req}}, $port);
} else {
$required_by{$req} = [ $port ];
$unresolved{$req} = 1;
}
}
}
}

$loop_prot = 100;
while (keys %mustbuild and $loop_prot--) {
CANDIDATE:
foreach my $candidate (keys %mustbuild) {
foreach my $dependency ({$required_by{$candidate}}) {
if (not grep {$_ eq $dependency} buildlist) {
next CANDIDATE;
}
}
unshift(buildlist, $candidate);
delete($mustbuild{$candidate});
}
}

foreach my $port (buildlist) {
if (not $deps_only or not exists $desired{$port}) {
print $port\n;
}
}
exit 0;



Re: Still no XFree86-4

2002-07-22 Thread John Angelmo

Eric Anholt wrote:
 On Sat, 2002-07-20 at 03:14, John Angelmo wrote:
 
Well here's my latest XFree86-4 build errors, I made a clean build 
uninstalled XFree-4, perl and so on but still I get these errors

 
 [...]
 
 
===  Extracting for XFree86-4.2.0_1,1

No MD5 checksum file.

===   XFree86-4.2.0_1,1 depends on shared library: Xft.1 - found
===  Patching for XFree86-4.2.0_1,1
===  Configuring for XFree86-4.2.0_1,1
===  Installing for XFree86-4.2.0_1,1
===   XFree86-4.2.0_1,1 depends on executable: xvinfo - found
===   XFree86-4.2.0_1,1 depends on file: /usr/X11R6/lib/X11/doc/ddx.TXT - found
 
 
 You don't have XFree86-4 uninstalled, or don't have it uninstalled
 successfully.  Just removing the XFree86-4 metaport doesn't remove the
 miniports that contain the actual files.  If you are going to build
 without using portupgrade, you should start from scratch wrt XFree86
 (all XFree86-4 ports uninstalled along with imake-4).
 


That was the second buildattempt, usually I deinstall 
XFree86-4-documents -libraries imake-4 but still I get the same error in 
the end, if we could put XFree86-4-clients in the miniport before 
-documents I think that this problem would be solved.

 
===   XFree86-4.2.0_1,1 depends on file: 
/usr/X11R6/lib/X11/fonts/100dpi/UTBI__10-ISO8859-1.pcf.gz - not found
===Verifying reinstall for 
/usr/X11R6/lib/X11/fonts/100dpi/UTBI__10-ISO8859-1.pcf.gz in 
/usr/ports/x11-fonts/XFree86-4-font100dpi
===  Extracting for XFree86-font100dpi-4.2.0

Checksum OK for xc/X420src-2.tgz.

===   XFree86-font100dpi-4.2.0 depends on executable: mkfontdir - found
===   XFree86-font100dpi-4.2.0 depends on executable: imake - found
===   XFree86-font100dpi-4.2.0 depends on shared library: X11.6 - found
===  Patching for XFree86-font100dpi-4.2.0
===  Configuring for XFree86-font100dpi-4.2.0
(cd /usr/ports/x11-fonts/XFree86-4-font100dpi/work/xc/fonts/encodings   imake 
-DUseInstalled -DProjectRoot=/usr/X11R6 -I/usr/X11R6/lib/X11/config  
-DTOPDIR=../../.. -DCURDIR=.;  make Makefiles ;  make includes ;  make depend)
making Makefiles in large...
including in ./large...
depending in ./large...
(cd /usr/ports/x11-fonts/XFree86-4-font100dpi/work/xc/fonts/bdf/100dpi   imake 
-DUseInstalled -DProjectRoot=/usr/X11R6 -I/usr/X11R6/lib/X11/config  
-DTOPDIR=../../.. -DCURDIR=.;  make Makefiles ;  make includes ;  make depend)
make: don't know how to make /usr/X11R6/bin/ucs2any.pl. Stop
 
 
 I'm aware of this one.  Currently the solution is use portupgrade -RiN
 XFree86-4.  I hope to get these dependencies fixed so it's not
 necessary to do this, but I haven't made it around to that yet.
 
 Also, for anyone reading this, one thing that'll help figure out build
 errors (particularly relating to dependencies like this) will be to
 include an ls -l /var/db/pkg/XFree86* /var/db/pkg/imake* with bug
 reports
 


/John


To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4

2002-07-21 Thread Eric Anholt

On Sat, 2002-07-20 at 03:14, John Angelmo wrote:
 Well here's my latest XFree86-4 build errors, I made a clean build 
 uninstalled XFree-4, perl and so on but still I get these errors
 
[...]

 ===  Extracting for XFree86-4.2.0_1,1
  No MD5 checksum file.
 ===   XFree86-4.2.0_1,1 depends on shared library: Xft.1 - found
 ===  Patching for XFree86-4.2.0_1,1
 ===  Configuring for XFree86-4.2.0_1,1
 ===  Installing for XFree86-4.2.0_1,1
 ===   XFree86-4.2.0_1,1 depends on executable: xvinfo - found
 ===   XFree86-4.2.0_1,1 depends on file: /usr/X11R6/lib/X11/doc/ddx.TXT - found

You don't have XFree86-4 uninstalled, or don't have it uninstalled
successfully.  Just removing the XFree86-4 metaport doesn't remove the
miniports that contain the actual files.  If you are going to build
without using portupgrade, you should start from scratch wrt XFree86
(all XFree86-4 ports uninstalled along with imake-4).

 ===   XFree86-4.2.0_1,1 depends on file: 
/usr/X11R6/lib/X11/fonts/100dpi/UTBI__10-ISO8859-1.pcf.gz - not found
 ===Verifying reinstall for 
/usr/X11R6/lib/X11/fonts/100dpi/UTBI__10-ISO8859-1.pcf.gz in 
/usr/ports/x11-fonts/XFree86-4-font100dpi
 ===  Extracting for XFree86-font100dpi-4.2.0
  Checksum OK for xc/X420src-2.tgz.
 ===   XFree86-font100dpi-4.2.0 depends on executable: mkfontdir - found
 ===   XFree86-font100dpi-4.2.0 depends on executable: imake - found
 ===   XFree86-font100dpi-4.2.0 depends on shared library: X11.6 - found
 ===  Patching for XFree86-font100dpi-4.2.0
 ===  Configuring for XFree86-font100dpi-4.2.0
 (cd /usr/ports/x11-fonts/XFree86-4-font100dpi/work/xc/fonts/encodings   imake 
-DUseInstalled -DProjectRoot=/usr/X11R6 -I/usr/X11R6/lib/X11/config  
-DTOPDIR=../../.. -DCURDIR=.;  make Makefiles ;  make includes ;  make depend)
 making Makefiles in large...
 including in ./large...
 depending in ./large...
 (cd /usr/ports/x11-fonts/XFree86-4-font100dpi/work/xc/fonts/bdf/100dpi   imake 
-DUseInstalled -DProjectRoot=/usr/X11R6 -I/usr/X11R6/lib/X11/config  
-DTOPDIR=../../.. -DCURDIR=.;  make Makefiles ;  make includes ;  make depend)
 make: don't know how to make /usr/X11R6/bin/ucs2any.pl. Stop

I'm aware of this one.  Currently the solution is use portupgrade -RiN
XFree86-4.  I hope to get these dependencies fixed so it's not
necessary to do this, but I haven't made it around to that yet.

Also, for anyone reading this, one thing that'll help figure out build
errors (particularly relating to dependencies like this) will be to
include an ls -l /var/db/pkg/XFree86* /var/db/pkg/imake* with bug
reports

-- 
Eric Anholt [EMAIL PROTECTED]
http://people.freebsd.org/~anholt/dri/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-17 Thread Will Andrews

On Tue, Jul 16, 2002 at 11:39:41PM -0600, Eric Anholt wrote:
  I thought the whole point of Wraphelp.c was that the person who
  runs the machine (whatever machine X is being installed on) has
  to obtain that file, so they would have to explicitly verify that
  they -- personally -- have the right to use it.
  
  Mind you, I did that once about seven years ago, and I just keep
  copying that Wraphelp.c around to wherever I need it.  I have no
  idea what the current requirement is...   :-)
 
 It used to be that way.  Then within the last year (iirc) our ports
 changed to auto-downloading Wraphelp.c and defaulting to HasXdmAuth
 YES.  I don't know what exactly changed legally.  I noted that at least
 NetBSD has a Wraphelp.c in their CVS repos of X-3 and X-4.
 
 My changes do make the file required by all of the miniports that could
 use it, though it only gets used if HasXdmAuth is set to YES by imake-4
 (it's default).

If you'll read the commit log which made this change, you'll see
that I was the one who changed this.  I did so after consulting
with core regarding the current export rules of the USA.  The BXA
(Bureau of Export Administration) loosened their rules for
cryptographical software export last year (or the year before, I
don't remember exactly), and so open source software is only
required to register with the BXA if they export cryptographic
software.  FreeBSD did that many years ago, so I removed the need
for somebody to fetch that file if they want XDM-AUTHORIZATION-1.
I'd like to point out that Wraphelp.c performs DES encryption,
and we have already done that out of the box for quite some time.

See http://www.bxa.doc.gov/ for more info.  [Seems they changed
their name to Bureau of Industry and Security...]

regards,
-- 
wca

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Still no XFree86-4?

2002-07-16 Thread John Angelmo

Hello

I erased my /usr/ports just to be sure that all the diffrent patches 
out, then cvsuped to get the latest version, to my disepointment 
XFree86-4 Still dosn't build under Current, I still got the same perl 
error in fonts, the perl port is installed.

Does anyone have a working patch?

/John


To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Andrew Kolchoogin

John,

On Tue, Jul 16, 2002 at 12:04:53PM +0200, John Angelmo wrote:

 I erased my /usr/ports just to be sure that all the diffrent patches 
 out, then cvsuped to get the latest version, to my disepointment 
 XFree86-4 Still dosn't build under Current, I still got the same perl 
 error in fonts, the perl port is installed.
Try to say as root use.perl port.

 Does anyone have a working patch?
It doesn't seem to me that moving perl executable from /usr/bin to
/usr/local/bin can affect executing of perl scripts.

Andrew.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Arnold Cavazos Jr.

This was posted on 11 July:

http://people.freebsd.org/~anholt/files/x420diff-1

I did have to manually copy Wraphelp.c somewhere in the font-server 
port, but things built fine after that.

--
abcjr

On Tue, Jul 16, 2002 at 12:04:53PM +0200, John Angelmo wrote:
 Hello
 
 I erased my /usr/ports just to be sure that all the diffrent patches 
 out, then cvsuped to get the latest version, to my disepointment 
 XFree86-4 Still dosn't build under Current, I still got the same perl 
 error in fonts, the perl port is installed.
 
 Does anyone have a working patch?
 
 /John
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with unsubscribe freebsd-current in the body of the message

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread John Angelmo


Wasn't this added in this commit?

http://freshports.org/commit.php?[EMAIL PROTECTED]

/John

Arnold Cavazos Jr. wrote:
 This was posted on 11 July:
 
 http://people.freebsd.org/~anholt/files/x420diff-1
 
 I did have to manually copy Wraphelp.c somewhere in the font-server 
 port, but things built fine after that.
 
 --
 abcjr
 
 On Tue, Jul 16, 2002 at 12:04:53PM +0200, John Angelmo wrote:
 
Hello

I erased my /usr/ports just to be sure that all the diffrent patches 
out, then cvsuped to get the latest version, to my disepointment 
XFree86-4 Still dosn't build under Current, I still got the same perl 
error in fonts, the perl port is installed.

Does anyone have a working patch?

/John


To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with unsubscribe freebsd-current in the body of the message




To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Garance A Drosihn

At 12:04 PM +0200 7/16/02, John Angelmo wrote:
Hello

I erased my /usr/ports just to be sure that all the different
patches out, then cvsuped to get the latest version, to my
disappointment XFree86-4 Still dosn't build under Current, I
still got the same perl error in fonts, the perl port is
installed.

Does anyone have a working patch?

I rebuilt all of XFree86-4 on current from scratch this past weekend
(probably Sunday night).  I ran into some minor problems because I
still had some left-over temporary patches in the 'files' directory
of one of the ports, but after I blew those away and re-cvsup'ed
then everything seemed to work okay.

The only place I ran into a problem was that the Wraphelp.c file did
not automatically show up in whatever directory it has to show up in,
so I had to do that by hand, and finish building that port by hand.
But I did end up with all of XFree86-4 built, and working.

I did have the perl port already built (and 'use.perl port' done),
and I do have:
 XFREE86_VERSION=4

in my /etc/make.conf file.  I do not know if that is necessary.

-- 
Garance Alistair Drosehn=   [EMAIL PROTECTED]
Senior Systems Programmer   or  [EMAIL PROTECTED]
Rensselaer Polytechnic Instituteor  [EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Eric Anholt

On Tue, 2002-07-16 at 04:04, John Angelmo wrote:
 Hello
 
 I erased my /usr/ports just to be sure that all the diffrent patches 
 out, then cvsuped to get the latest version, to my disepointment 
 XFree86-4 Still dosn't build under Current, I still got the same perl 
 error in fonts, the perl port is installed.
 
 Does anyone have a working patch?

http://people.freebsd.org/~anholt/files/imake4diff

Could you apply this patch and rebuild imake-4 and see if it picks up
the perl dependency?   If it doesn't pick it up, does adding:
http://people.freebsd.org/~anholt/files/bsdportmk.diff
make perl get picked up?

If you've already installed perl, ignore this.

As far as the Wraphelp.c issues, I'm working on cleaning that mess up
right now (testing the patch on a full XFree86-4 build on clean
-current).

 
 /John
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with unsubscribe freebsd-current in the body of the message
-- 
Eric Anholt [EMAIL PROTECTED]
http://people.freebsd.org/~anholt/dri/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Eric Anholt

On Tue, 2002-07-16 at 17:25, Eric Anholt wrote:
 As far as the Wraphelp.c issues, I'm working on cleaning that mess up
 right now (testing the patch on a full XFree86-4 build on clean
 -current).

I've put the patch up at
http://people.freebsd.org/~anholt/files/x420diff2-1
It does the following:
- Make me maintainer of imake-4 port.  It's very much a part of the X-4
build, and was supposed to be in the take-over-maintainership commit.
- Make the X-4 miniports use imake-4's HasXdmAuth setting (the
use-Wraphelp.c option) and copy Wraphelp.c (unconditionally).
- Adds USE_PERL5 to imake-4 because perl's required for the install of
it.  This will also cover perl dependencies for the rest of the X-4.
- Rewords some of the comments in XFree86-4-*/scripts/configure.

It notably doesn't include md5summing of Wraphelp.c.  If I can find
what's the 'best' Wraphelp.c (and most legal?  What's the status of
wraphelp importing/exporting?), I'll switch it.  Is there any
circumstance when someone wouldn't have access to Wraphelp.c?

If this works for other people, I'll work on getting it committed.

-- 
Eric Anholt [EMAIL PROTECTED]
http://people.freebsd.org/~anholt/dri/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Garance A Drosihn

At 7:27 PM -0600 7/16/02, Eric Anholt wrote:
It notably doesn't include md5summing of Wraphelp.c.  If I can
find what's the 'best' Wraphelp.c (and most legal?  What's the
status of wraphelp importing/exporting?), I'll switch it.  Is
there any circumstance when someone wouldn't have access to
Wraphelp.c?

I thought the whole point of Wraphelp.c was that the person who
runs the machine (whatever machine X is being installed on) has
to obtain that file, so they would have to explicitly verify that
they -- personally -- have the right to use it.

Mind you, I did that once about seven years ago, and I just keep
copying that Wraphelp.c around to wherever I need it.  I have no
idea what the current requirement is...   :-)

-- 
Garance Alistair Drosehn=   [EMAIL PROTECTED]
Senior Systems Programmer   or  [EMAIL PROTECTED]
Rensselaer Polytechnic Instituteor  [EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Still no XFree86-4?

2002-07-16 Thread Eric Anholt

On Tue, 2002-07-16 at 19:38, Garance A Drosihn wrote:
 At 7:27 PM -0600 7/16/02, Eric Anholt wrote:
 It notably doesn't include md5summing of Wraphelp.c.  If I can
 find what's the 'best' Wraphelp.c (and most legal?  What's the
 status of wraphelp importing/exporting?), I'll switch it.  Is
 there any circumstance when someone wouldn't have access to
 Wraphelp.c?
 
 I thought the whole point of Wraphelp.c was that the person who
 runs the machine (whatever machine X is being installed on) has
 to obtain that file, so they would have to explicitly verify that
 they -- personally -- have the right to use it.
 
 Mind you, I did that once about seven years ago, and I just keep
 copying that Wraphelp.c around to wherever I need it.  I have no
 idea what the current requirement is...   :-)

It used to be that way.  Then within the last year (iirc) our ports
changed to auto-downloading Wraphelp.c and defaulting to HasXdmAuth
YES.  I don't know what exactly changed legally.  I noted that at least
NetBSD has a Wraphelp.c in their CVS repos of X-3 and X-4.

My changes do make the file required by all of the miniports that could
use it, though it only gets used if HasXdmAuth is set to YES by imake-4
(it's default).

-- 
Eric Anholt [EMAIL PROTECTED]
http://people.freebsd.org/~anholt/dri/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message