summaryrefslogtreecommitdiff
path: root/pkg/libass/gen.lua
blob: 9fd6192b4b4fb215665488313fb7cbcb37296e39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
cflags{
	'-I $dir',
	'-isystem $builddir/pkg/freetype/include',
	'-isystem $builddir/pkg/fribidi/include',
}
nasmflags{
	'-D ARCH_X86_64=1',
	'-D HAVE_ALIGNED_STACK=1',
	'-D HAVE_CPUNOP=0',
	'-D private_prefix=ass',
	'-i $srcdir/libass/',
	'-f elf64',
	'-P $outdir/PIC.asm',
}

pkg.hdrs = copy('$outdir/include/ass', '$srcdir/libass', {'ass.h', 'ass_types.h'})
pkg.deps = {
	'pkg/freetype/headers',
	'pkg/fribidi/headers',
	'$outdir/PIC.asm',
}

build('sed', '$outdir/PIC.asm', '$builddir/probe/PIC', {expr='s,#define,%define,'})

lib('libass.a', [[
	libass/(
		ass.c ass_utils.c
		ass_string.c ass_strtod.c
		ass_library.c ass_cache.c
		ass_font.c ass_fontselect.c
		ass_render.c ass_render_api.c
		ass_parse.c ass_shaper.c
		ass_outline.c ass_drawing.c
		ass_rasterizer.c ass_rasterizer_c.c
		ass_bitmap.c ass_blur.c
		x86/(
			rasterizer.asm blend_bitmaps.asm blur.asm cpuid.asm
			be_blur.asm
		)
	)
	$builddir/pkg/freetype/libfreetype.a.d
	$builddir/pkg/fribidi/libfribidi.a
]])

fetch 'git'