Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Harfbuzz
提交
5f7f0bfa
T
Third Party Harfbuzz
项目概览
OpenHarmony
/
Third Party Harfbuzz
1 年多 前同步成功
通知
0
Star
18
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Harfbuzz
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
5f7f0bfa
编写于
3月 29, 2018
作者:
E
Ebrahim Byagowi
提交者:
GitHub
3月 29, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add README.wine.md and touch some other docs (#939)
上级
5aa2c6e1
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
65 addition
and
15 deletion
+65
-15
Makefile.am
Makefile.am
+2
-1
README.python.md
README.python.md
+9
-3
README.wine.md
README.wine.md
+40
-0
RELEASING.md
RELEASING.md
+14
-11
未找到文件。
Makefile.am
浏览文件 @
5f7f0bfa
...
...
@@ -9,7 +9,8 @@ SUBDIRS = src util test docs
EXTRA_DIST
=
\
autogen.sh
\
harfbuzz.doap
\
README.python
\
README.python.md
\
README.wine.md
\
BUILD.md
\
RELEASING.md
\
CMakeLists.txt
\
...
...
README.python
→
README.python
.md
浏览文件 @
5f7f0bfa
...
...
@@ -2,11 +2,15 @@ To enable HarfBuzz bindings for Python among other languages, make sure
you have latest version of gobject-introspection available. On Ubuntu,
you can install that this way:
sudo apt-get install libgirepository1.0-dev
```
bash
sudo
apt-get
install
libgirepository1.0-dev
```
And then run autogen.sh (if building from git), and then:
./configure --with-gobject --enable-introspection
```
bash
./configure
--with-gobject
--enable-introspection
```
Make sure that gobject-introspection is enabled then in the final report.
...
...
@@ -21,7 +25,9 @@ $prefix/lib/girepository-* directory.
Make sure you have pygobject installed. Then check that the following
import works in your Python interpretter:
from gi.repository import HarfBuzz
```
python
from
gi.repository
import
HarfBuzz
```
If it does, you are ready to call HarfBuzz from Python! Congratulations.
See src/sample.py.
...
...
README.wine.md
0 → 100644
浏览文件 @
5f7f0bfa
For the development of HarfBuzz, the Microsoft shaping technology, Uniscribe,
as a widely used and tested shaper is used as more-or-less OpenType reference
implemenetation and that specially is important where OpenType specification
is or wasn't that clear. For having access to Uniscribe on Linux/macOS these
steps are recommended:
1.
Install Wine from your favorite package manager.
2.
And
`mingw-w64`
compiler.
With
`brew`
on macOS, you can have it like
`brew install mingw-w64`
3.
Download and put
[
this
](
https://drive.google.com/open?id=0B3_fQkxDZZXXbWltRGd5bjVrUDQ
)
on your
`~/.local/i686-w64-mingw32`
.
4.
Replace all the instances of
`/home/behdad/.local/i586-mingw32msvc`
and
`/home/behdad/.local/i686-w64-mingw32`
with
`<$HOME>/.local/i686-w64-mingw32`
on that folder. (
`<$HOME>`
replace it with
`/home/XXX`
or
`/Users/XXX`
on macOS)
Probably you shouldn't replace the ones are inside binaries.
5.
`NOCONFIGURE=1 ./autogen.sh && mkdir winbuild && cd winbuild`
6.
`../mingw32.sh --with-uniscribe && cd ..`
7.
`make -Cwinbuild`
Now you can use hb-shape using
`wine winbuild/util/hb-shape.exe`
but if you like to
to use the original Uniscribe,
8.
Bring a 32bit version of
`usp10.dll`
for youself from
`C:\Windows\SysWOW64\usp10.dll`
of your
Windows installation (asuming you have a 64-bit installation, otherwise
`C:\Windows\System32\usp10.dll`
)
that it is not a DirectWrite proxy (
[
for more info
](
https://en.wikipedia.org/wiki/Uniscribe
)
).
Rule of thumb, your
`usp10.dll`
should have a size more than 500kb, otherwise
it is designed to work with DirectWrite which Wine can't work with its original one.
Put the dll on the folder you are going to run the next command,
9.
`WINEDLLOVERRIDES="usp10=n" wine winbuild/util/hb-shape.exe fontname.ttf -u 0061,0062,0063 --shaper=uniscribe`
(
`0061,0062,0063`
means
`abc`
, use test/shaping/hb-unicode-decode to generate ones you need)
RELEASING.md
浏览文件 @
5f7f0bfa
...
...
@@ -15,23 +15,26 @@ HarfBuzz release walk-through checklist:
2.
Based on severity of changes, decide whether it's a minor or micro release
number bump,
3.
Make sure you have correct date and new version at the top of NEWS file,
3.
Search for REPLACEME on the repository and replace it with the chosen version
for the release.
4.
Bump version in configure.ac line 3
,
4.
Make sure you have correct date and new version at the top of NEWS file
,
5.
Do "make distcheck", if it passes, you get a tarball.
5.
Bump version in configure.ac line 3,
6.
Do "make distcheck", if it passes, you get a tarball.
Otherwise, fix things and commit them separately before making release,
6
.
"make release-files". Enter your GPG password. This creates a sha256 hash
7
.
"make release-files". Enter your GPG password. This creates a sha256 hash
and signs it.
7
.
Now that you have release files built, commit NEWS and configure.ac changes.
8
.
Now that you have release files built, commit NEWS and configure.ac changes.
The commit message is simply the release number. Eg. "1.4.7"
8
.
Tag the release and sign it: Eg. "git tag -s 1.4.7 -m 1.4.7". Enter your
9
.
Tag the release and sign it: Eg. "git tag -s 1.4.7 -m 1.4.7". Enter your
GPG password again.
9
.
Build win32 bundle.
10
.
Build win32 bundle.
a. Put contents of
[
this
](
https://drive.google.com/open?id=0B3_fQkxDZZXXbWltRGd5bjVrUDQ
)
on your
`~/.local/i686-w64-mingw32`
,
...
...
@@ -41,7 +44,7 @@ HarfBuzz release walk-through checklist:
d. Back in the parent directory, run
`./UPDATE.sh`
(available below) to build win32 bundle.
1
0
.
Copy all artefacts to users.freedesktop.org and move them into
1
1
.
Copy all artefacts to users.freedesktop.org and move them into
`/srv/www.freedesktop.org/www/software/harfbuzz/release`
There should be four
files. Eg.:
```
...
...
@@ -51,15 +54,15 @@ HarfBuzz release walk-through checklist:
-rw-r--r-- 1 behdad eng 2895619 Jul 18 11:34 harfbuzz-1.4.7-win32.zip
```
1
1
.
While doing that, quickly double-check the size of the .tar.bz2 and .zip
1
2
.
While doing that, quickly double-check the size of the .tar.bz2 and .zip
files against their previous releases to make sure nothing bad happened.
They should be in the ballpark, perhaps slightly larger. Sometimes they
do shrink, that's not by itself a stopper.
1
2
.
Push the commit and tag out: "git push --follow-tags". Make sure it's
1
3
.
Push the commit and tag out: "git push --follow-tags". Make sure it's
pushed both to freedesktop repo and github.
1
3
.
Go to GitHub release page
[
here
](
https://github.com/harfbuzz/harfbuzz/releases
)
,
1
4
.
Go to GitHub release page
[
here
](
https://github.com/harfbuzz/harfbuzz/releases
)
,
edit the tag, upload artefacts and NEWS entry and save.
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录