mirror of
https://github.com/oasislinux/oasis.git
synced 2026-05-12 21:34:47 +02:00
110 lines
2.9 KiB
Lua
110 lines
2.9 KiB
Lua
cflags{
|
|
'-D HAVE_CONFIG_H',
|
|
'-D FRIBIDI_LIB_STATIC',
|
|
'-I $dir',
|
|
'-I $outdir',
|
|
'-I $outdir/include',
|
|
'-I $srcdir/lib',
|
|
}
|
|
|
|
sub('tools.ninja', function()
|
|
toolchain(config.host)
|
|
cflags{
|
|
'-D HAVE_STRINGIZE',
|
|
'-D DONT_HAVE_FRIBIDI_CONFIG_H',
|
|
'-D HAVE_STDLIB_H',
|
|
'-D HAVE_STRING_H',
|
|
'-D HAVE_STRINGS_H',
|
|
'-D STDC_HEADERS',
|
|
'-I $outdir/include',
|
|
'-I $srcdir/lib',
|
|
}
|
|
cc('gen.tab/packtab.c')
|
|
exe('gen-unicode-version', {'gen.tab/gen-unicode-version.c'})
|
|
for _, t in ipairs{'arabic-shaping', 'bidi-type', 'joining-type', 'mirroring', 'brackets', 'brackets-type'} do
|
|
exe('gen-'..t..'-tab', expand{'gen.tab/', {
|
|
'gen-'..t..'-tab.c',
|
|
'packtab.c.o',
|
|
}}, {'$gendir/headers'})
|
|
end
|
|
end)
|
|
|
|
set('compression', '2')
|
|
|
|
rule('gentool', '$outdir/$tool $args $in >$out')
|
|
local function gentool(tool, out, srcs, args)
|
|
build('gentool', '$outdir/'..out, {expand{'$srcdir/gen.tab/unidata/', srcs}, '|', '$outdir/gen-'..tool}, {
|
|
tool='gen-'..tool,
|
|
args=args,
|
|
})
|
|
end
|
|
|
|
gentool('unicode-version', 'include/fribidi-unicode-version.h', {'BidiMirroring.txt'})
|
|
gentool('arabic-shaping-tab', 'arabic-shaping.tab.i', {'UnicodeData.txt'}, '$compression')
|
|
gentool('bidi-type-tab', 'bidi-type.tab.i', {'UnicodeData.txt'}, '$compression')
|
|
gentool('joining-type-tab', 'joining-type.tab.i', {'UnicodeData.txt', 'ArabicShaping.txt'}, '$compression')
|
|
gentool('mirroring-tab', 'mirroring.tab.i', {'BidiMirroring.txt'}, '$compression')
|
|
gentool('brackets-tab', 'brackets.tab.i', {'BidiBrackets.txt', 'UnicodeData.txt'}, '$compression')
|
|
gentool('brackets-type-tab', 'brackets-type.tab.i', {'BidiBrackets.txt'}, '$compression')
|
|
|
|
pkg.hdrs = {
|
|
copy('$outdir/include', '$srcdir/lib', {
|
|
'fribidi-arabic.h',
|
|
'fribidi-begindecls.h',
|
|
'fribidi-bidi.h',
|
|
'fribidi-bidi-types.h',
|
|
'fribidi-bidi-types-list.h',
|
|
'fribidi-common.h',
|
|
'fribidi-char-sets.h',
|
|
'fribidi-char-sets-list.h',
|
|
'fribidi-deprecated.h',
|
|
'fribidi-enddecls.h',
|
|
'fribidi-flags.h',
|
|
'fribidi-joining.h',
|
|
'fribidi-joining-types.h',
|
|
'fribidi-joining-types-list.h',
|
|
'fribidi-mirroring.h',
|
|
'fribidi-brackets.h',
|
|
'fribidi-shape.h',
|
|
'fribidi-types.h',
|
|
'fribidi-unicode.h',
|
|
'fribidi.h',
|
|
}),
|
|
copy('$outdir/include', '$dir', {'fribidi-config.h'}),
|
|
'$outdir/include/fribidi-unicode-version.h',
|
|
}
|
|
pkg.deps = {
|
|
'$outdir/bidi-type.tab.i',
|
|
'$outdir/joining-type.tab.i',
|
|
'$outdir/arabic-shaping.tab.i',
|
|
'$outdir/mirroring.tab.i',
|
|
'$outdir/brackets.tab.i',
|
|
'$outdir/brackets-type.tab.i',
|
|
'$gendir/headers',
|
|
}
|
|
|
|
lib('libfribidi.a', [[
|
|
lib/(
|
|
fribidi.c
|
|
fribidi-arabic.c
|
|
fribidi-bidi.c
|
|
fribidi-bidi-types.c
|
|
fribidi-deprecated.c
|
|
fribidi-char-sets.c
|
|
fribidi-char-sets-cap-rtl.c
|
|
fribidi-char-sets-cp1255.c
|
|
fribidi-char-sets-cp1256.c
|
|
fribidi-char-sets-iso8859-6.c
|
|
fribidi-char-sets-iso8859-8.c
|
|
fribidi-char-sets-utf8.c
|
|
fribidi-joining.c
|
|
fribidi-joining-types.c
|
|
fribidi-mirroring.c
|
|
fribidi-brackets.c
|
|
fribidi-run.c
|
|
fribidi-shape.c
|
|
)
|
|
]])
|
|
|
|
fetch 'git'
|