[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:04568] Re: binary-towns, binary-pc98 (Re: These bugs should be fixed to release Hamm-JP (07/30 13:00))



From: ISHIKAWA Mutsumi <ishikawa@xxxxxxxxxxx>
Subject: [debian-devel:04566] Re: binary-towns, binary-pc98 (Re:  These bugs should be fixed to release Hamm-JP (07/30 13:00))
Date: Sat, 1 Aug 1998 02:33:31 +0900

> >> debian-jp に配置する時に、しかるべき場所に置くようにします。
> 
>  次からは control ファイルで何か指定したほうが良いですか?

そうですねぇ。
ちょっと試してみました。

例えば control に

Architecture: pc98

と書いておいて rules の dpkg-gencontrol で 

   dpkg-gencontrol -DArchitecture=pc98

とかでいいと思うのですが、こうすると hammの dpkg だと 
install できません。
 package architecture (pc98) does not match system (i386)
と言われてしまう…

というわけで rules で dpkg --build した後 _i386.deb -> _pc98.deb
にしてしまえばよさそうな感じです。以下の script を使えば

	dpkg --build debian/tmp ..
	.../dpkg-fakearch <packagename>=<arch>

でむりやり変更することができます(^^;
# 要は file名を変更してと debian/files を書きかえているだけ

まぁ、アップロードの報告メールで、「これはpc98」「これはtowns」って
言ってくれれば、それでいいです。

PS.
ついでに これは xfreetype は関係ない話だけど 
dpkg-buildpackage で -a オプションつかえば
*_<arch>.changes の arch が変更できるようですね。

-- 
鵜飼文敏

#!/usr/bin/perl -- -*- perl -*-
# Copyright (c) 1998 Fumitoshi UKAI <ukai@debian.or.jp>
# This is free software; see the GNU General Public License
# version 2 or later for copying conditions.  There is NO warranty.
#

$version = '0.01';

$fileslistfile = 'debian/files';

%parch = ();

while (defined($_ = shift(@ARGV))) {
    if (m|(.*)=(.*)|) {
	($package, $arch) = ($1, $2);
	$parch{$package} = $arch;
    } else {
	print STDERR
"Debian GNU/Linux dpkg-fakearch $version.  Copyright (C) 1998
Fumitoshi UKAI.  This is free software; see the GNU General Public License
version 2 or later for copying conditions.  There is NO warranty.

Usage: dpkg-fakearch [package=arch] ...
";
	exit 1;
    }
}

@F = ();
open(F, "<$fileslistfile") or die "cannot open $fileslistfile: $!";
while (<F>) {
    ($file, $sect, $pri) = split;
    foreach $p (keys %parch) {
	if ($file =~ /^($p_.*)_([^_]*)\.deb/) {
	    $ofile = $file;
	    $file = "$1_$parch{$p}.deb";
	    rename("../$ofile", "../$file") or die "cannot rename $ofile to $file:$!";
	}
    }
    push(@F, "$file $sect $pri\n");
}
close(F);
open(F, ">$fileslistfile") or die "cannot write to $fileslistfile: $!";
print F @F;
close(F);
exit 0;