
Arch Linuxのインストールは http://itouhiro.hatenablog.com/entry/20140730/linux を参照。
まずは Arch Build System をインストール。
# pacman -S abs
https://www.archlinux.org/packages/extra/i686/fontforge/
を見ると「Repository: Extra」とある。
/etc/abs.conf でextraの前に ! がないか確認する。
REPOS=(core extra !community !testing !community-testing
!staging !community-staging !gnome-unstable !kde-unstable)absコマンドを実行して、absツリーを取得。
# abs
/etc/makepkg.conf を書き換えてPACKAGERを設定。
#PACKAGER="John Doe <john@doe.com>" PACKAGER="Itou Hiroki <itouhiro !atmark! users.sourceforge.jp>"
このあとはrootではなく、一般ユーザーで実行します。
ビルドディレクトリの作成
$ mkdir ~/abs $ cp -pr /var/abs/extra/fontforge ~/abs/ $ cd ~/abs/fontforge/
日本語パッチの準備
http://www.geocities.jp/meir000/fontforge/ の日本語縦書きパッチを取得。
$ wget http://www.geocities.jp/meir000/fontforge/fontforge-20140104-vmetrics.patch.txt $ sha1sum fontforge-20140104-vmetrics.patch.txt $ vi PKGBUILD
編集する箇所
--- PKGBUILD.orig 2014-07-31 07:05:48.000000000 +0900
+++ PKGBUILD 2014-07-31 16:20:41.938494158 +0900
@@ -16,10 +16,12 @@
'python2' 'desktop-file-utils' 'gtk-update-icon-cache' 'hicolor-icon-theme')
source=("https://github.com/fontforge/fontforge/archive/${_pkgver}.tar.gz"
'http://fontforge.org/cidmaps.tgz'
- 'giflib.patch')
+ 'giflib.patch'
+ 'fontforge-20140104-vmetrics.patch.txt')
sha1sums=('abce297e53e8b6ff6f08871e53d1eb0be5ab82e7'
'efbc7c9d3e95159f5600dc71f9cccb370e46bb94'
- '420dd1dd75d72719f3203d832bfa8c1c7e7eef86')
+ '420dd1dd75d72719f3203d832bfa8c1c7e7eef86'
+ 'f056b3ae8afb432b289000c2193c221cddc5830f')
options=('!makeflags')
install=install
@@ -28,6 +30,7 @@
cd "${srcdir}/${pkgname}-${_pkgver}"
sed '/fontforge_package_name/s/^#//' -i configure.ac
patch -p1 -i ../giflib.patch
+ patch -p1 -i ../fontforge-20140104-vmetrics.patch.txt
./autogen.sh
}
ビルド
$ makepkg -s
ビルドを待つ。
[foo@localhost fontforge]$ makepkg -s
/usr/bin/makepkg: eval: line 2272: unexpected EOF while looking for matching `"'
/usr/bin/makepkg: eval: line 2273: syntax error: unexpected end of file
==> Making package: fontforge 20140101-3 (Thu Jul 31 16:14:44 JST 2014)
==> Checking runtime dependencies...
==> Installing missing dependencies...
warning: skipping target: libspiro
resolving dependencies...
looking for inter-conflicts...
Packages (7): libsodium-0.6.1-1 giflib-5.1.0-1 libspiro-1:0.2-1
libunicodenames-1.1.0_beta1-1 libxkbui-1.0.2-5 python2-2.7.8-1
zeromq-4.0.4-3
Total Download Size: 10.07 MiB
Total Installed Size: 72.74 MiB
:: Proceed with installation? [Y/n] Y
...
==> Making package: fontforge 20140101-3 (Thu Jul 31 16:22:16 JST 2014)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found 2.0.20140101.tar.gz
-> Found cidmaps.tgz
-> Found giflib.patch
-> Found fontforge-20140104-vmetrics.patch.txt
==> Validating source files with sha1sums...
2.0.20140101.tar.gz ... Passed
cidmaps.tgz ... Passed
giflib.patch ... Passed
fontforge-20140104-vmetrics.patch.txt ... Passed
==> Extracting sources...
-> Extracting 2.0.20140101.tar.gz with bsdtar
-> Extracting cidmaps.tgz with bsdtar
==> Starting prepare()...
patching file gutils/gimagereadgif.c
patching file fontforge/splinechar.c
patching file fontforge/splinefont.c
patching file fontforge/tottfgpos.c
patching file fontforgeexe/charview.c
patching file fontforgeexe/cvpointer.c
Preparing the fontforge build system...please wait
Found GNU Autoconf version 2.69
...
==> Creating package "fontforge"...
-> Generating .PKGINFO file...
-> Adding install file...
-> Generating .MTREE file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: fontforge 20140101-3 (Thu Jul 31 17:17:25 JST 2014)
[foo@localhost fontforge]$ ls
./ fontforge-20140101-3-i686.pkg.tar.xz pkg/
../ fontforge-20140104-vmetrics.patch.txt PKGBUILD
2.0.20140101.tar.gz giflib.patch PKGBUILD.orig
cidmaps.tgz install src/
[foo@localhost fontforge]$patchも適切に適用されたようである。
これをインストール。
$ sudo pacman -U fontforge-20140101-3-i686.pkg.tar.xz
