summaryrefslogtreecommitdiff
path: root/pkg/netsurf
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/netsurf')
-rw-r--r--pkg/netsurf/gen.lua197
-rw-r--r--pkg/netsurf/gen.rc170
-rw-r--r--pkg/netsurf/libcss/gen.lua191
-rw-r--r--pkg/netsurf/libcss/gen.rc185
-rw-r--r--pkg/netsurf/libdom/gen.lua72
-rw-r--r--pkg/netsurf/libdom/gen.rc67
-rw-r--r--pkg/netsurf/libhubbub/gen.lua38
-rw-r--r--pkg/netsurf/libhubbub/gen.rc33
-rw-r--r--pkg/netsurf/libnsbmp/gen.lua2
-rw-r--r--pkg/netsurf/libnsbmp/gen.rc2
-rw-r--r--pkg/netsurf/libnsgif/gen.lua2
-rw-r--r--pkg/netsurf/libnsgif/gen.rc2
-rw-r--r--pkg/netsurf/libnsutils/gen.lua7
-rw-r--r--pkg/netsurf/libnsutils/gen.rc2
-rw-r--r--pkg/netsurf/libparserutils/gen.lua20
-rw-r--r--pkg/netsurf/libparserutils/gen.rc18
-rw-r--r--pkg/netsurf/libsvgtiny/gen.lua21
-rw-r--r--pkg/netsurf/libsvgtiny/gen.rc17
-rw-r--r--pkg/netsurf/libwapcaplet/gen.lua2
-rw-r--r--pkg/netsurf/libwapcaplet/gen.rc2
-rw-r--r--pkg/netsurf/nsgenbind/gen.lua23
-rw-r--r--pkg/netsurf/nsgenbind/gen.rc16
22 files changed, 575 insertions, 514 deletions
diff --git a/pkg/netsurf/gen.lua b/pkg/netsurf/gen.lua
new file mode 100644
index 00000000..dfd71dc2
--- /dev/null
+++ b/pkg/netsurf/gen.lua
@@ -0,0 +1,197 @@
+cflags{'-D NDEBUG'}
+
+subgen 'libcss'
+subgen 'libdom'
+subgen 'libhubbub'
+subgen 'libnsbmp'
+subgen 'libnsgif'
+subgen 'libnsutils'
+subgen 'libparserutils'
+subgen 'libsvgtiny'
+subgen 'libwapcaplet'
+subgen 'nsgenbind'
+
+sub('tools.ninja', function()
+ toolchain 'host'
+ exe('convert_image', {'frontends/framebuffer/convert_image.c'}, {'pkg/libpng/headers'}, {
+ ldlibs='-lpng -lz',
+ })
+end)
+
+-- netsurf
+cflags{
+ '-include $dir/config.h',
+ '-I $dir',
+ '-I $srcdir',
+ '-I $srcdir/include',
+ '-I $srcdir/frontends',
+ '-I $srcdir/content/handlers',
+ '-I $outdir',
+ '-I $outdir/libdom/include',
+ '-I $builddir/pkg/curl/include',
+ '-I $builddir/pkg/libjpeg-turbo/include',
+ '-I $builddir/pkg/libpng/include',
+ '-I $builddir/pkg/libressl/include',
+ '-I $builddir/pkg/pixman/include',
+ '-I $builddir/pkg/wayland/include',
+ '-I $builddir/pkg/wayland-protocols/include',
+ '-I $builddir/pkg/zlib/include',
+ '-I $dir/libcss/src/include',
+ '-I $dir/libdom/src/include',
+ '-I $dir/libhubbub/src/include',
+ '-I $dir/libnsbmp/src/include',
+ '-I $dir/libnsgif/src/include',
+ '-I $dir/libnsutils/src/include',
+ '-I $dir/libparserutils/src/include',
+ '-I $dir/libsvgtiny/src/include',
+ '-I $dir/libwapcaplet/src/include',
+ '-I pkg/freetype/src/include',
+ '-I pkg/libxkbcommon/src',
+ '-I pkg/openbsd/include',
+ '-I pkg/utf8proc/src',
+}
+
+rule('nsgenbind', '$outdir/nsgenbind/nsgenbind -I $srcdir/content/handlers/javascript/WebIDL $in $outdir/duktape', {
+ restat='1',
+})
+
+local nsgenbind = expand{'$outdir/duktape/', lines('nsgenbind.txt')}
+build('nsgenbind', nsgenbind, {
+ '$srcdir/content/handlers/javascript/duktape/netsurf.bnd',
+ '|', '$outdir/nsgenbind/nsgenbind',
+})
+
+pkg.deps = {
+ '$builddir/pkg/freetype/fetch.stamp',
+ '$builddir/pkg/libxkbcommon/fetch.stamp',
+ '$builddir/pkg/utf8proc/fetch.stamp',
+ '$dir/libdom/headers',
+ '$outdir/duktape/binding.c',
+ '$outdir/libcss/fetch.stamp',
+ '$outdir/libdom/fetch.stamp',
+ '$outdir/libhubbub/fetch.stamp',
+ '$outdir/libnsbmp/fetch.stamp',
+ '$outdir/libnsgif/fetch.stamp',
+ '$outdir/libnsutils/fetch.stamp',
+ '$outdir/libparserutils/fetch.stamp',
+ '$outdir/libsvgtiny/fetch.stamp',
+ '$outdir/libwapcaplet/fetch.stamp',
+ 'pkg/curl/headers',
+ 'pkg/libjpeg-turbo/headers',
+ 'pkg/libpng/headers',
+ 'pkg/libressl/headers',
+ 'pkg/zlib/headers',
+}
+
+local sources = {}
+for _, src in ipairs(nsgenbind) do
+ if src:hassuffix('.c') then
+ table.insert(sources, src)
+ end
+end
+exe('netsurf', {sources, paths[[
+ desktop/(
+ cookie_manager.c knockout.c hotlist.c mouse.c
+ plot_style.c print.c search.c searchweb.c scrollbar.c
+ sslcert_viewer.c textarea.c version.c system_colour.c
+ local_history.c global_history.c treeview.c
+
+ browser.c browser_history.c download.c frames.c netsurf.c
+ save_complete.c save_text.c selection.c textinput.c gui_factory.c
+ save_pdf.c font_haru.c
+ )
+ frontends/tiny/(download.c fetch.c icons.c gui.c render.c schedule.c ui.c wl.c)
+ content/(
+ content.c content_factory.c dirlist.c fetch.c hlcache.c
+ llcache.c mimesniff.c urldb.c no_backing_store.c
+ fetchers/(curl.c data.c file.c about.c resource.c)
+ handlers/(
+ javascript/(fetcher.c content.c duktape/(dukky.c duktape.c))
+ css/(css.c dump.c internal.c hints.c select.c utils.c)
+ image/(image.c image_cache.c bmp.c gif.c ico.c jpeg.c png.c svg.c)
+ )
+ )
+ utils/(
+ bloom.c
+ corestrings.c
+ file.c
+ filename.c
+ filepath.c
+ hashtable.c
+ idna.c
+ libdom.c
+ log.c
+ messages.c
+ nsoption.c
+ punycode.c
+ talloc.c
+ time.c
+ url.c
+ useragent.c
+ utf8.c
+ utils.c
+ http/(
+ challenge.c generics.c primitives.c parameter.c
+ content-disposition.c content-type.c www-authenticate.c
+ )
+ nsurl/(
+ nsurl.c
+ parse.c
+ )
+ )
+ render/(
+ box.c box_construct.c box_normalise.c box_textarea.c
+ font.c form.c imagemap.c layout.c search.c table.c textplain.c
+ html.c html_css.c html_css_fetcher.c html_script.c
+ html_interaction.c html_redraw.c html_redraw_border.c
+ html_forms.c html_object.c
+ )
+ $outdir/(
+ libcss/libcss.a.d
+ libdom/libdom.a.d
+ libnsbmp/libnsbmp.a
+ libnsgif/libnsgif.a
+ libnsutils/libnsutils.a
+ libsvgtiny/libsvgtiny.a.d
+ )
+ $builddir/pkg/(
+ curl/libcurl.a.d
+ freetype/libfreetype.a.d
+ libjpeg-turbo/libjpeg-turbo.a
+ libpng/libpng.a
+ libxkbcommon/libxkbcommon.a
+ pixman/libpixman.a
+ utf8proc/libutf8proc.a
+ wayland/(libwayland-client.a.d libwayland-cursor.a)
+ zlib/libz.a
+
+ wayland-protocols/xdg-shell-unstable-v5-protocol.c.o
+ )
+]]})
+file('bin/netsurf', '755', '$outdir/netsurf')
+
+build('sed', '$outdir/netsurf.1', '$srcdir/docs/netsurf-fb.1', {
+ expr='s,netsurf-fb,netsurf,g',
+})
+man{'$outdir/netsurf.1'}
+
+build('awk', '$outdir/Messages', {'$srcdir/resources/FatMessages', '|', '$dir/messages.awk'}, {
+ expr='-f $dir/messages.awk -v lang=en -v filter=any',
+})
+file('share/netsurf/Messages', '644', '$outdir/Messages')
+
+file('share/netsurf/adblock.css', '644', '$srcdir/!NetSurf/Resources/AdBlock,f79')
+file('share/netsurf/credits.html', '644', '$srcdir/!NetSurf/Resources/en/credits.html,faf')
+file('share/netsurf/default.css', '644', '$srcdir/!NetSurf/Resources/CSS,f79')
+file('share/netsurf/favicon.png', '644', '$srcdir/resources/favicon.png')
+file('share/netsurf/internal.css', '644', '$srcdir/!NetSurf/Resources/internal.css,f79')
+file('share/netsurf/licence.html', '644', '$srcdir/!NetSurf/Resources/en/licence.html,faf')
+sym('share/netsurf/maps.html', 'welcome.html')
+file('share/netsurf/netsurf.png', '644', '$srcdir/!NetSurf/Resources/netsurf.png,b60')
+file('share/netsurf/quirks.css', '644', '$srcdir/!NetSurf/Resources/Quirks,f79')
+file('share/netsurf/welcome.html', '644', '$srcdir/!NetSurf/Resources/en/welcome.html,faf')
+for icon in iterpaths[[back forward add remove home reload stop close up down]] do
+ file('share/netsurf/icons/'..icon..'.ff', '644', '$srcdir/frontends/tiny/res/icons/'..icon..'.ff')
+end
+
+fetch 'git'
diff --git a/pkg/netsurf/gen.rc b/pkg/netsurf/gen.rc
deleted file mode 100644
index a1083ee8..00000000
--- a/pkg/netsurf/gen.rc
+++ /dev/null
@@ -1,170 +0,0 @@
-cflags -D NDEBUG
-
-subgen libcss
-subgen libdom
-subgen libhubbub
-subgen libnsbmp
-subgen libnsgif
-subgen libnsutils
-subgen libparserutils
-subgen libsvgtiny
-subgen libwapcaplet
-subgen nsgenbind
-
-{
- toolchain host
- exe convert_image -d pkg/libpng/headers frontends/framebuffer/convert_image.c ; with\
- ldlibs '-lpng -lz'
-} >tools.ninja ; subninja tools.ninja
-
-# netsurf
-cflags\
- -include '$dir'/config.h\
- -I '$dir' \
- -I '$srcdir' \
- -I '$srcdir'/include\
- -I '$srcdir'/frontends\
- -I '$srcdir'/content/handlers\
- -I '$outdir' \
- -I '$outdir'/libdom/include\
- -I '$builddir'/pkg/curl/include\
- -I '$builddir'/pkg/libjpeg-turbo/include\
- -I '$builddir'/pkg/libpng/include\
- -I '$builddir'/pkg/libressl/include\
- -I '$builddir'/pkg/pixman/include\
- -I '$builddir'/pkg/wayland/include\
- -I '$builddir'/pkg/wayland-protocols/include\
- -I '$builddir'/pkg/zlib/include\
- -I '$dir'/libcss/src/include\
- -I '$dir'/libdom/src/include\
- -I '$dir'/libhubbub/src/include\
- -I '$dir'/libnsbmp/src/include\
- -I '$dir'/libnsgif/src/include\
- -I '$dir'/libnsutils/src/include\
- -I '$dir'/libparserutils/src/include\
- -I '$dir'/libsvgtiny/src/include\
- -I '$dir'/libwapcaplet/src/include\
- -I pkg/freetype/src/include\
- -I pkg/libxkbcommon/src\
- -I pkg/openbsd/include\
- -I pkg/utf8proc/src
-
-gen_inputs=($gen_inputs '$dir'/nsgenbind.txt) ; checkstatus
-rule nsgenbind '$outdir/nsgenbind/nsgenbind -I $srcdir/content/handlers/javascript/WebIDL $in $outdir/duktape' ; with\
- restat 1
-
-nsgenbind_srcs='$outdir'/duktape/`{cat nsgenbind.txt}
-build $"nsgenbind_srcs nsgenbind '$srcdir'/content/handlers/javascript/duktape/netsurf.bnd '|' '$outdir'/nsgenbind/nsgenbind
-
-phony deps '$outdir'/duktape/binding.c\
- '$outdir'/^(\
- libcss libdom libhubbub libnsbmp libnsgif libnsutils\
- libparserutils libsvgtiny libwapcaplet\
- )^/fetch.stamp\
- '$builddir'/pkg/^(freetype libxkbcommon utf8proc)^/fetch.stamp\
- ('$dir'/libdom pkg/^(curl libjpeg-turbo libpng libressl zlib))^/headers
-
-exe netsurf -d '$dir'/deps\
- desktop/^(\
- cookie_manager.c knockout.c hotlist.c mouse.c\
- plot_style.c print.c search.c searchweb.c scrollbar.c\
- sslcert_viewer.c textarea.c version.c system_colour.c\
- local_history.c global_history.c treeview.c\
- \
- browser.c browser_history.c download.c frames.c netsurf.c\
- save_complete.c save_text.c selection.c textinput.c gui_factory.c\
- save_pdf.c font_haru.c\
- )\
- frontends/tiny/^(download.c fetch.c icons.c gui.c render.c schedule.c ui.c wl.c)\
- content/^(\
- content.c content_factory.c dirlist.c fetch.c hlcache.c\
- llcache.c mimesniff.c urldb.c no_backing_store.c\
- fetchers/^(curl.c data.c file.c about.c resource.c)\
- handlers/^(\
- javascript/^(fetcher.c content.c duktape/^(dukky.c duktape.c))\
- css/^(css.c dump.c internal.c hints.c select.c utils.c)\
- image/^(image.c image_cache.c bmp.c gif.c ico.c jpeg.c png.c svg.c)\
- )\
- )\
- utils/^(\
- bloom.c\
- corestrings.c\
- file.c\
- filename.c\
- filepath.c\
- hashtable.c\
- idna.c\
- libdom.c\
- log.c\
- messages.c\
- nsoption.c\
- punycode.c\
- talloc.c\
- time.c\
- url.c\
- useragent.c\
- utf8.c\
- utils.c\
- http/^(\
- challenge.c generics.c primitives.c parameter.c\
- content-disposition.c content-type.c www-authenticate.c\
- )\
- nsurl/^(\
- nsurl.c\
- parse.c\
- )\
- )\
- render/^(\
- box.c box_construct.c box_normalise.c box_textarea.c\
- font.c form.c imagemap.c layout.c search.c table.c textplain.c\
- html.c html_css.c html_css_fetcher.c html_script.c\
- html_interaction.c html_redraw.c html_redraw_border.c\
- html_forms.c html_object.c\
- )\
- '$outdir'/^(\
- duktape/`{grep '\.c$' nsgenbind.txt}\
- \
- libcss/libcss.a.d\
- libdom/libdom.a.d\
- libnsbmp/libnsbmp.a\
- libnsgif/libnsgif.a\
- libnsutils/libnsutils.a\
- libsvgtiny/libsvgtiny.a.d\
- )\
- '$builddir'/pkg/^(\
- curl/libcurl.a.d\
- freetype/libfreetype.a.d\
- libjpeg-turbo/libjpeg-turbo.a\
- libpng/libpng.a\
- libxkbcommon/libxkbcommon.a\
- pixman/libpixman.a\
- utf8proc/libutf8proc.a\
- wayland/^(libwayland-client.a.d libwayland-cursor.a)\
- zlib/libz.a\
- \
- wayland-protocols/xdg-shell-unstable-v5-protocol.c.o\
- )
-file bin/netsurf '$outdir'/netsurf 755
-
-build '$outdir'/netsurf.1 sed '$srcdir'/docs/netsurf-fb.1 ; with\
- expr 's,netsurf-fb,netsurf,g'
-man -d '$outdir' 1 netsurf.1
-
-build '$outdir'/Messages awk '$srcdir'/resources/FatMessages '|' '$dir'/messages.awk ; with\
- expr '-f $dir/messages.awk -v lang=en -v filter=any'
-file share/netsurf/Messages '$outdir'/Messages 644
-
-file share/netsurf/adblock.css '$srcdir'/!NetSurf/Resources/AdBlock,f79 644
-file share/netsurf/credits.html '$srcdir'/!NetSurf/Resources/en/credits.html,faf 644
-file share/netsurf/default.css '$srcdir'/!NetSurf/Resources/CSS,f79 644
-file share/netsurf/favicon.png '$srcdir'/resources/favicon.png 644
-file share/netsurf/internal.css '$srcdir'/!NetSurf/Resources/internal.css,f79 644
-file share/netsurf/licence.html '$srcdir'/!NetSurf/Resources/en/licence.html,faf 644
-sym share/netsurf/maps.html welcome.html
-file share/netsurf/netsurf.png '$srcdir'/!NetSurf/Resources/netsurf.png,b60 644
-file share/netsurf/quirks.css '$srcdir'/!NetSurf/Resources/Quirks,f79 644
-file share/netsurf/welcome.html '$srcdir'/!NetSurf/Resources/en/welcome.html,faf 644
-for(icon in back forward add remove home reload stop close up down)
- file share/netsurf/icons/$icon.ff '$srcdir'/frontends/tiny/res/icons/$icon.ff 644
-
-fetch git
diff --git a/pkg/netsurf/libcss/gen.lua b/pkg/netsurf/libcss/gen.lua
new file mode 100644
index 00000000..c3f75da8
--- /dev/null
+++ b/pkg/netsurf/libcss/gen.lua
@@ -0,0 +1,191 @@
+cflags{
+ '-I $srcdir/include',
+ '-I $srcdir/src',
+ '-I pkg/netsurf/libparserutils/src/include',
+ '-I pkg/netsurf/libwapcaplet/src/include',
+}
+
+sub('tools.ninja', function()
+ toolchain 'host'
+ exe('gen_prop_parser', {'src/parse/properties/css_property_parser_gen.c'})
+end)
+
+build('awk', '$outdir/prop_parsers.c', {
+ '$srcdir/src/parse/properties/properties.gen',
+ '|', '$dir/prop_parsers.awk', '$outdir/gen_prop_parser',
+}, {expr='-f $dir/prop_parsers.awk gen_prop_parser=$outdir/gen_prop_parser'})
+
+pkg.deps = {
+ '$builddir/pkg/netsurf/libparserutils/fetch.stamp',
+ '$builddir/pkg/netsurf/libwapcaplet/fetch.stamp',
+}
+
+lib('libcss.a', [[src/(
+ stylesheet.c
+ charset/detect.c
+ lex/lex.c
+ parse/(
+ parse.c language.c important.c propstrings.c font_face.c
+ properties/(
+ azimuth.c
+ background.c
+ background_position.c
+ border.c
+ border_color.c
+ border_spacing.c
+ border_style.c
+ border_width.c
+ clip.c
+ columns.c
+ column_rule.c
+ content.c
+ cue.c
+ cursor.c
+ elevation.c
+ font.c
+ font_family.c
+ font_weight.c
+ list_style.c
+ list_style_type.c
+ margin.c
+ opacity.c
+ outline.c
+ overflow.c
+ padding.c
+ pause.c
+ play_during.c
+ properties.c
+ quotes.c
+ text_decoration.c
+ utils.c
+ voice_family.c
+ )
+ )
+ select/(
+ arena.c computed.c dispatch.c hash.c select.c font_face.c
+ properties/(
+ helpers.c
+ azimuth.c
+ background_attachment.c
+ background_color.c
+ background_image.c
+ background_position.c
+ background_repeat.c
+ border_bottom_color.c
+ border_bottom_style.c
+ border_bottom_width.c
+ border_collapse.c
+ border_left_color.c
+ border_left_style.c
+ border_left_width.c
+ border_right_color.c
+ border_right_style.c
+ border_right_width.c
+ border_spacing.c
+ border_top_color.c
+ border_top_style.c
+ border_top_width.c
+ bottom.c
+ box_sizing.c
+ break_after.c
+ break_before.c
+ break_inside.c
+ caption_side.c
+ clear.c
+ clip.c
+ color.c
+ column_count.c
+ column_fill.c
+ column_gap.c
+ column_rule_color.c
+ column_rule_style.c
+ column_rule_width.c
+ column_span.c
+ column_width.c
+ content.c
+ counter_increment.c
+ counter_reset.c
+ cue_after.c
+ cue_before.c
+ cursor.c
+ direction.c
+ display.c
+ elevation.c
+ empty_cells.c
+ float.c
+ font_family.c
+ font_size.c
+ font_style.c
+ font_variant.c
+ font_weight.c
+ height.c
+ left.c
+ letter_spacing.c
+ line_height.c
+ list_style_image.c
+ list_style_position.c
+ list_style_type.c
+ margin_bottom.c
+ margin_left.c
+ margin_right.c
+ margin_top.c
+ max_height.c
+ max_width.c
+ min_height.c
+ min_width.c
+ opacity.c
+ orphans.c
+ outline_color.c
+ outline_style.c
+ outline_width.c
+ overflow_x.c
+ overflow_y.c
+ padding_bottom.c
+ padding_left.c
+ padding_right.c
+ padding_top.c
+ page_break_after.c
+ page_break_before.c
+ page_break_inside.c
+ pause_after.c
+ pause_before.c
+ pitch.c
+ pitch_range.c
+ play_during.c
+ position.c
+ quotes.c
+ richness.c
+ right.c
+ speech_rate.c
+ speak.c
+ speak_header.c
+ speak_numeral.c
+ speak_punctuation.c
+ stress.c
+ table_layout.c
+ text_align.c
+ text_decoration.c
+ text_indent.c
+ text_transform.c
+ top.c
+ unicode_bidi.c
+ vertical_align.c
+ visibility.c
+ voice_family.c
+ volume.c
+ white_space.c
+ widows.c
+ width.c
+ word_spacing.c
+ writing_mode.c
+ z_index.c
+ )
+ )
+ utils/(errors.c utils.c)
+) $builddir/pkg/netsurf/(
+ libcss/prop_parsers.c
+ libparserutils/libparserutils.a
+ libwapcaplet/libwapcaplet.a
+)]])
+
+fetch 'git'
diff --git a/pkg/netsurf/libcss/gen.rc b/pkg/netsurf/libcss/gen.rc
deleted file mode 100644
index 7a04e997..00000000
--- a/pkg/netsurf/libcss/gen.rc
+++ /dev/null
@@ -1,185 +0,0 @@
-cflags\
- -I '$srcdir'/include\
- -I '$srcdir'/src\
- -I pkg/netsurf/libparserutils/src/include\
- -I pkg/netsurf/libwapcaplet/src/include
-
-{
- toolchain host
- exe gen_prop_parser src/parse/properties/css_property_parser_gen.c
-} >tools.ninja ; subninja tools.ninja
-
-build '$outdir'/prop_parsers.c awk '$srcdir'/src/parse/properties/properties.gen '|' '$dir'/prop_parsers.awk '$outdir'/gen_prop_parser ; with\
- expr '-f $dir/prop_parsers.awk gen_prop_parser=$outdir/gen_prop_parser'
-
-phony deps '$builddir'/pkg/netsurf/^(libparserutils libwapcaplet)^/fetch.stamp
-
-lib libcss.a -d '$dir'/deps src/^(\
- stylesheet.c\
- charset/detect.c\
- lex/lex.c\
- parse/^(\
- parse.c language.c important.c propstrings.c font_face.c\
- properties/^(\
- azimuth.c\
- background.c\
- background_position.c\
- border.c\
- border_color.c\
- border_spacing.c\
- border_style.c\
- border_width.c\
- clip.c\
- columns.c\
- column_rule.c\
- content.c\
- cue.c\
- cursor.c\
- elevation.c\
- font.c\
- font_family.c\
- font_weight.c\
- list_style.c\
- list_style_type.c\
- margin.c\
- opacity.c\
- outline.c\
- overflow.c\
- padding.c\
- pause.c\
- play_during.c\
- properties.c\
- quotes.c\
- text_decoration.c\
- utils.c\
- voice_family.c\
- )\
- )\
- select/^(\
- arena.c computed.c dispatch.c hash.c select.c font_face.c\
- properties/^(\
- helpers.c\
- azimuth.c\
- background_attachment.c\
- background_color.c\
- background_image.c\
- background_position.c\
- background_repeat.c\
- border_bottom_color.c\
- border_bottom_style.c\
- border_bottom_width.c\
- border_collapse.c\
- border_left_color.c\
- border_left_style.c\
- border_left_width.c\
- border_right_color.c\
- border_right_style.c\
- border_right_width.c\
- border_spacing.c\
- border_top_color.c\
- border_top_style.c\
- border_top_width.c\
- bottom.c\
- box_sizing.c\
- break_after.c\
- break_before.c\
- break_inside.c\
- caption_side.c\
- clear.c\
- clip.c\
- color.c\
- column_count.c\
- column_fill.c\
- column_gap.c\
- column_rule_color.c\
- column_rule_style.c\
- column_rule_width.c\
- column_span.c\
- column_width.c\
- content.c\
- counter_increment.c\
- counter_reset.c\
- cue_after.c\
- cue_before.c\
- cursor.c\
- direction.c\
- display.c\
- elevation.c\
- empty_cells.c\
- float.c\
- font_family.c\
- font_size.c\
- font_style.c\
- font_variant.c\
- font_weight.c\
- height.c\
- left.c\
- letter_spacing.c\
- line_height.c\
- list_style_image.c\
- list_style_position.c\
- list_style_type.c\
- margin_bottom.c\
- margin_left.c\
- margin_right.c\
- margin_top.c\
- max_height.c\
- max_width.c\
- min_height.c\
- min_width.c\
- opacity.c\
- orphans.c\
- outline_color.c\
- outline_style.c\
- outline_width.c\
- overflow_x.c\
- overflow_y.c\
- padding_bottom.c\
- padding_left.c\
- padding_right.c\
- padding_top.c\
- page_break_after.c\
- page_break_before.c\
- page_break_inside.c\
- pause_after.c\
- pause_before.c\
- pitch.c\
- pitch_range.c\
- play_during.c\
- position.c\
- quotes.c\
- richness.c\
- right.c\
- speech_rate.c\
- speak.c\
- speak_header.c\
- speak_numeral.c\
- speak_punctuation.c\
- stress.c\
- table_layout.c\
- text_align.c\
- text_decoration.c\
- text_indent.c\
- text_transform.c\
- top.c\
- unicode_bidi.c\
- vertical_align.c\
- visibility.c\
- voice_family.c\
- volume.c\
- white_space.c\
- widows.c\
- width.c\
- word_spacing.c\
- writing_mode.c\
- z_index.c\
- )\
- )\
- utils/^(errors.c utils.c)\
-) '$builddir'/pkg/netsurf/^(\
- libcss/prop_parsers.c\
- libparserutils/libparserutils.a\
- libwapcaplet/libwapcaplet.a\
-)
-
-fetch git
diff --git a/pkg/netsurf/libdom/gen.lua b/pkg/netsurf/libdom/gen.lua
new file mode 100644
index 00000000..83063c7b
--- /dev/null
+++ b/pkg/netsurf/libdom/gen.lua
@@ -0,0 +1,72 @@
+cflags{
+ '-I $srcdir/include',
+ '-I $srcdir/src',
+ '-I pkg/netsurf/libhubbub/src/include',
+ '-I pkg/netsurf/libparserutils/src/include',
+ '-I pkg/netsurf/libwapcaplet/src/include',
+ '-I $builddir/pkg/expat/include',
+}
+
+pkg.hdrs = copy('$outdir/include/dom', '$srcdir', {
+ 'bindings/hubbub/errors.h',
+ 'bindings/hubbub/parser.h',
+ 'bindings/xml/xmlerror.h',
+ 'bindings/xml/xmlparser.h',
+})
+pkg.deps = {
+ 'pkg/expat/headers',
+ '$builddir/pkg/netsurf/libhubbub/fetch.stamp',
+ '$builddir/pkg/netsurf/libparserutils/fetch.stamp',
+ '$builddir/pkg/netsurf/libwapcaplet/fetch.stamp',
+}
+
+lib('libdom.a', [[
+ src/(
+ core/(
+ string.c node.c
+ attr.c characterdata.c element.c
+ implementation.c
+ text.c typeinfo.c comment.c
+ namednodemap.c nodelist.c
+ cdatasection.c document_type.c entity_ref.c pi.c
+ doc_fragment.c document.c
+ )
+ events/(
+ event.c dispatch.c event_target.c document_event.c
+ custom_event.c keyboard_event.c mouse_wheel_event.c
+ text_event.c event_listener.c mouse_event.c mutation_event.c
+ ui_event.c mouse_multi_wheel_event.c mutation_name_event.c
+ )
+ html/(
+ html_document.c html_collection.c html_options_collection.c
+ html_element.c html_html_element.c html_head_element.c
+ html_link_element.c html_title_element.c html_meta_element.c
+ html_base_element.c html_style_element.c
+ html_body_element.c html_form_element.c html_select_element.c
+ html_button_element.c html_input_element.c html_text_area_element.c
+ html_opt_group_element.c html_option_element.c html_hr_element.c
+ html_dlist_element.c html_directory_element.c html_menu_element.c
+ html_fieldset_element.c html_legend_element.c html_div_element.c
+ html_paragraph_element.c html_heading_element.c html_quote_element.c
+ html_pre_element.c html_br_element.c html_label_element.c
+ html_ulist_element.c html_olist_element.c html_li_element.c
+ html_font_element.c html_mod_element.c html_anchor_element.c
+ html_basefont_element.c html_image_element.c html_object_element.c
+ html_param_element.c html_applet_element.c html_area_element.c
+ html_map_element.c html_script_element.c html_tablecaption_element.c
+ html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c
+ html_table_element.c html_tablerow_element.c html_frameset_element.c
+ html_frame_element.c html_iframe_element.c html_isindex_element.c
+ )
+ utils/(namespace.c hashtable.c character_valid.c validate.c)
+ )
+ bindings/hubbub/parser.c
+ bindings/xml/expat_xmlparser.c
+ $builddir/pkg/(
+ expat/libexpat.a.d
+ netsurf/libhubbub/libhubbub.a.d
+ netsurf/libwapcaplet/libwapcaplet.a
+ )
+]])
+
+fetch 'git'
diff --git a/pkg/netsurf/libdom/gen.rc b/pkg/netsurf/libdom/gen.rc
deleted file mode 100644
index 97e1b7ed..00000000
--- a/pkg/netsurf/libdom/gen.rc
+++ /dev/null
@@ -1,67 +0,0 @@
-cflags\
- -I '$srcdir'/include\
- -I '$srcdir'/src\
- -I pkg/netsurf/libhubbub/src/include\
- -I pkg/netsurf/libparserutils/src/include\
- -I pkg/netsurf/libwapcaplet/src/include\
- -I '$builddir'/pkg/expat/include
-
-hdrs=bindings/^(hubbub/^(errors.h parser.h) xml/^(xmlerror.h xmlparser.h))
-for(hdr in $hdrs)
- build '$outdir'/include/dom/$hdr copy '$srcdir'/$hdr
-phony headers '$outdir'/include/dom/$hdrs
-phony deps\
- pkg/expat/headers\
- '$builddir'/pkg/netsurf/^(libhubbub libparserutils libwapcaplet)^/fetch.stamp
-
-lib libdom.a -d '$dir'/deps\
- src/^(\
- core/^(\
- string.c node.c\
- attr.c characterdata.c element.c\
- implementation.c\
- text.c typeinfo.c comment.c\
- namednodemap.c nodelist.c\
- cdatasection.c document_type.c entity_ref.c pi.c\
- doc_fragment.c document.c\
- )\
- events/^(\
- event.c dispatch.c event_target.c document_event.c\
- custom_event.c keyboard_event.c mouse_wheel_event.c\
- text_event.c event_listener.c mouse_event.c mutation_event.c\
- ui_event.c mouse_multi_wheel_event.c mutation_name_event.c\
- )\
- html/^(\
- html_document.c html_collection.c html_options_collection.c\
- html_element.c html_html_element.c html_head_element.c\
- html_link_element.c html_title_element.c html_meta_element.c\
- html_base_element.c html_style_element.c\
- html_body_element.c html_form_element.c html_select_element.c\
- html_button_element.c html_input_element.c html_text_area_element.c\
- html_opt_group_element.c html_option_element.c html_hr_element.c\
- html_dlist_element.c html_directory_element.c html_menu_element.c\
- html_fieldset_element.c html_legend_element.c html_div_element.c\
- html_paragraph_element.c html_heading_element.c html_quote_element.c\
- html_pre_element.c html_br_element.c html_label_element.c\
- html_ulist_element.c html_olist_element.c html_li_element.c\
- html_font_element.c html_mod_element.c html_anchor_element.c\
- html_basefont_element.c html_image_element.c html_object_element.c\
- html_param_element.c html_applet_element.c html_area_element.c\
- html_map_element.c html_script_element.c html_tablecaption_element.c\
- html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c\
- html_table_element.c html_tablerow_element.c html_frameset_element.c\
- html_frame_element.c html_iframe_element.c html_isindex_element.c\
- )\
- utils/^(namespace.c hashtable.c character_valid.c validate.c)\
- )\
- bindings/hubbub/parser.c\
- bindings/xml/expat_xmlparser.c\
- '$builddir'/pkg/^(\
- expat/libexpat.a.d\
- netsurf/^(\
- libhubbub/libhubbub.a.d\
- libwapcaplet/libwapcaplet.a\
- )\
- )
-
-fetch git
diff --git a/pkg/netsurf/libhubbub/gen.lua b/pkg/netsurf/libhubbub/gen.lua
new file mode 100644
index 00000000..a2522fe8
--- /dev/null
+++ b/pkg/netsurf/libhubbub/gen.lua
@@ -0,0 +1,38 @@
+cflags{
+ '-I $outdir',
+ '-I $srcdir/src',
+ '-I $srcdir/include',
+ '-I pkg/netsurf/libdom/src/include',
+ '-I pkg/netsurf/libparserutils/src/include',
+ '-I pkg/netsurf/libwapcaplet/src/include',
+}
+
+build('awk', '$outdir/entities.inc', {'$srcdir/build/Entities', '|', '$dir/entities.awk'}, {
+ expr='-f $dir/entities.awk',
+})
+
+pkg.deps = {
+ '$outdir/entities.inc',
+ '$builddir/pkg/netsurf/libdom/fetch.stamp',
+ '$builddir/pkg/netsurf/libparserutils/fetch.stamp',
+ '$builddir/pkg/netsurf/libwapcaplet/fetch.stamp',
+}
+
+lib('libhubbub.a', [[src/(
+ parser.c
+ charset/detect.c
+ tokeniser/(entities.c tokeniser.c)
+ treebuilder/(
+ treebuilder.c
+ initial.c before_html.c before_head.c in_head.c
+ in_head_noscript.c after_head.c in_body.c in_table.c
+ in_caption.c in_column_group.c in_table_body.c in_row.c
+ in_cell.c in_select.c in_select_in_table.c
+ in_foreign_content.c after_body.c in_frameset.c
+ after_frameset.c after_after_body.c after_after_frameset.c
+ generic_rcdata.c
+ )
+ utils/(errors.c string.c)
+) $builddir/pkg/netsurf/libparserutils/libparserutils.a]])
+
+fetch 'git'
diff --git a/pkg/netsurf/libhubbub/gen.rc b/pkg/netsurf/libhubbub/gen.rc
deleted file mode 100644
index c83e0563..00000000
--- a/pkg/netsurf/libhubbub/gen.rc
+++ /dev/null
@@ -1,33 +0,0 @@
-cflags\
- -I '$outdir' \
- -I '$srcdir'/src\
- -I '$srcdir'/include\
- -I pkg/netsurf/libdom/src/include\
- -I pkg/netsurf/libparserutils/src/include\
- -I pkg/netsurf/libwapcaplet/src/include
-
-build '$outdir'/entities.inc awk '$srcdir'/build/Entities '|' '$dir'/entities.awk ; with\
- expr '-f $dir/entities.awk'
-
-phony deps\
- '$outdir'/entities.inc\
- '$builddir'/pkg/netsurf/^(libdom libparserutils libwapcaplet)^/fetch.stamp
-
-lib libhubbub.a -d '$dir'/deps src/^(\
- parser.c\
- charset/detect.c\
- tokeniser/^(entities.c tokeniser.c)\
- treebuilder/^(\
- treebuilder.c\
- initial.c before_html.c before_head.c in_head.c\
- in_head_noscript.c after_head.c in_body.c in_table.c\
- in_caption.c in_column_group.c in_table_body.c in_row.c\
- in_cell.c in_select.c in_select_in_table.c\
- in_foreign_content.c after_body.c in_frameset.c\
- after_frameset.c after_after_body.c after_after_frameset.c\
- generic_rcdata.c\
- )\
- utils/^(errors.c string.c)\
-) '$builddir'/pkg/netsurf/libparserutils/libparserutils.a
-
-fetch git
diff --git a/pkg/netsurf/libnsbmp/gen.lua b/pkg/netsurf/libnsbmp/gen.lua
new file mode 100644
index 00000000..3604b5e3
--- /dev/null
+++ b/pkg/netsurf/libnsbmp/gen.lua
@@ -0,0 +1,2 @@
+lib('libnsbmp.a', {'src/libnsbmp.c'})
+fetch 'git'
diff --git a/pkg/netsurf/libnsbmp/gen.rc b/pkg/netsurf/libnsbmp/gen.rc
deleted file mode 100644
index ca9158a0..00000000
--- a/pkg/netsurf/libnsbmp/gen.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-lib libnsbmp.a src/libnsbmp.c
-fetch git
diff --git a/pkg/netsurf/libnsgif/gen.lua b/pkg/netsurf/libnsgif/gen.lua
new file mode 100644
index 00000000..91faf0b5
--- /dev/null
+++ b/pkg/netsurf/libnsgif/gen.lua
@@ -0,0 +1,2 @@
+lib('libnsgif.a', {'src/libnsgif.c'})
+fetch 'git'
diff --git a/pkg/netsurf/libnsgif/gen.rc b/pkg/netsurf/libnsgif/gen.rc
deleted file mode 100644
index 472553a1..00000000
--- a/pkg/netsurf/libnsgif/gen.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-lib libnsgif.a src/libnsgif.c
-fetch git
diff --git a/pkg/netsurf/libnsutils/gen.lua b/pkg/netsurf/libnsutils/gen.lua
new file mode 100644
index 00000000..e2bbff99
--- /dev/null
+++ b/pkg/netsurf/libnsutils/gen.lua
@@ -0,0 +1,7 @@
+lib('libnsutils.a', {
+ 'src/base64.c',
+ 'src/time.c',
+ 'src/unistd.c',
+})
+
+fetch 'git'
diff --git a/pkg/netsurf/libnsutils/gen.rc b/pkg/netsurf/libnsutils/gen.rc
deleted file mode 100644
index 44f05f65..00000000
--- a/pkg/netsurf/libnsutils/gen.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-lib libnsutils.a src/^(base64.c time.c unistd.c)
-fetch git
diff --git a/pkg/netsurf/libparserutils/gen.lua b/pkg/netsurf/libparserutils/gen.lua
new file mode 100644
index 00000000..ad4e82f0
--- /dev/null
+++ b/pkg/netsurf/libparserutils/gen.lua
@@ -0,0 +1,20 @@
+cflags{
+ '-I $srcdir/include',
+ '-I $srcdir/src',
+}
+
+build('awk', '$outdir/aliases.inc', {'$srcdir/build/Aliases', '|', '$dir/aliases.awk'}, {
+ expr='-f $dir/aliases.awk',
+})
+
+cc('src/charset/aliases.c', {'$outdir/aliases.inc'}, {cflags='$cflags -I $outdir'})
+lib('libparserutils.a', [[src/(
+ charset/(
+ aliases.c.o codec.c
+ encodings/(utf8.c utf16.c)
+ )
+ input/(filter.c inputstream.c)
+ utils/(buffer.c errors.c stack.c vector.c)
+)]])
+
+fetch 'git'
diff --git a/pkg/netsurf/libparserutils/gen.rc b/pkg/netsurf/libparserutils/gen.rc
deleted file mode 100644
index 0bd628ae..00000000
--- a/pkg/netsurf/libparserutils/gen.rc
+++ /dev/null
@@ -1,18 +0,0 @@
-cflags\
- -I '$srcdir'/include\
- -I '$srcdir'/src
-
-build '$outdir'/aliases.inc awk '$srcdir'/build/Aliases '|' '$dir'/aliases.awk ; with\
- expr '-f $dir/aliases.awk'
-
-cc src/charset/aliases.c '||' '$outdir'/aliases.inc ; with cflags '$cflags -I $outdir'
-lib libparserutils.a src/^(\
- charset/^(\
- aliases.c.o codec.c\
- encodings/^(utf8.c utf16.c)\
- )\
- input/^(filter.c inputstream.c)\
- utils/^(buffer.c errors.c stack.c vector.c)\
-)
-
-fetch git
diff --git a/pkg/netsurf/libsvgtiny/gen.lua b/pkg/netsurf/libsvgtiny/gen.lua
new file mode 100644
index 00000000..3650bd7e
--- /dev/null
+++ b/pkg/netsurf/libsvgtiny/gen.lua
@@ -0,0 +1,21 @@
+cflags{
+ '-I $srcdir/include',
+ '-I $srcdir/src',
+ '-I pkg/netsurf/libdom/src/include',
+ '-I pkg/netsurf/libwapcaplet/src/include',
+ '-I $builddir/pkg/netsurf/libdom/include',
+}
+
+pkg.deps = {
+ 'pkg/netsurf/libdom/headers',
+ '$builddir/pkg/netsurf/libdom/fetch.stamp',
+ '$builddir/pkg/netsurf/libwapcaplet/fetch.stamp',
+}
+
+build('cc', '$outdir/src/src_colors.c.o', {'$dir/src_colors.c', '||', '$outdir/fetch.stamp', '$dir/deps'})
+lib('libsvgtiny.a', [[
+ src/(src_colors.c.o svgtiny.c svgtiny_gradient.c svgtiny_list.c)
+ $builddir/pkg/netsurf/libdom/libdom.a.d
+]])
+
+fetch 'git'
diff --git a/pkg/netsurf/libsvgtiny/gen.rc b/pkg/netsurf/libsvgtiny/gen.rc
deleted file mode 100644
index 49eb73d6..00000000
--- a/pkg/netsurf/libsvgtiny/gen.rc
+++ /dev/null
@@ -1,17 +0,0 @@
-cflags\
- -I '$srcdir'/include\
- -I '$srcdir'/src\
- -I pkg/netsurf/libdom/src/include\
- -I pkg/netsurf/libwapcaplet/src/include\
- -I '$builddir'/pkg/netsurf/libdom/include
-
-phony deps\
- pkg/netsurf/libdom/headers\
- '$builddir'/pkg/netsurf/^(libdom libwapcaplet)^/fetch.stamp
-
-build '$outdir'/src/src_colors.c.o cc '$dir'/src_colors.c '||' '$outdir'/fetch.stamp '$dir'/deps
-lib libsvgtiny.a -d '$dir'/deps\
- src/^(src_colors.c.o svgtiny.c svgtiny_gradient.c svgtiny_list.c)\
- '$builddir'/pkg/netsurf/libdom/libdom.a.d
-
-fetch git
diff --git a/pkg/netsurf/libwapcaplet/gen.lua b/pkg/netsurf/libwapcaplet/gen.lua
new file mode 100644
index 00000000..88a4ac27
--- /dev/null
+++ b/pkg/netsurf/libwapcaplet/gen.lua
@@ -0,0 +1,2 @@
+lib('libwapcaplet.a', {'src/libwapcaplet.c'})
+fetch 'git'
diff --git a/pkg/netsurf/libwapcaplet/gen.rc b/pkg/netsurf/libwapcaplet/gen.rc
deleted file mode 100644
index 5f75a028..00000000
--- a/pkg/netsurf/libwapcaplet/gen.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-lib libwapcaplet.a src/libwapcaplet.c
-fetch git
diff --git a/pkg/netsurf/nsgenbind/gen.lua b/pkg/netsurf/nsgenbind/gen.lua
new file mode 100644
index 00000000..39524aee
--- /dev/null
+++ b/pkg/netsurf/nsgenbind/gen.lua
@@ -0,0 +1,23 @@
+toolchain 'host'
+cflags{'-I $srcdir/src'}
+
+local generated = {
+ 'nsgenbind-lexer.c',
+ 'nsgenbind-parser.c',
+ 'webidl-lexer.c',
+ 'webidl-parser.c',
+}
+for _, src in ipairs(generated) do
+ build('cc', '$outdir/src/'..src..'.o', {'$dir/'..src, '||', '$outdir/fetch.stamp'})
+end
+
+exe('nsgenbind', [[src/(
+ nsgenbind.c utils.c webidl-ast.c nsgenbind-ast.c ir.c
+ duk-libdom.c duk-libdom-interface.c duk-libdom-dictionary.c
+ duk-libdom-common.c duk-libdom-generated.c
+
+ nsgenbind-lexer.c.o nsgenbind-parser.c.o
+ webidl-lexer.c.o webidl-parser.c.o
+)]])
+
+fetch 'git'
diff --git a/pkg/netsurf/nsgenbind/gen.rc b/pkg/netsurf/nsgenbind/gen.rc
deleted file mode 100644
index e94b55df..00000000
--- a/pkg/netsurf/nsgenbind/gen.rc
+++ /dev/null
@@ -1,16 +0,0 @@
-toolchain host
-cflags -I '$srcdir'/src
-
-for(src in nsgenbind-^(lexer parser)^.c webidl-^(lexer parser)^.c)
- build '$outdir'/src/$src.o cc '$dir'/$src '||' '$outdir'/fetch.stamp
-
-exe nsgenbind src/^(\
- nsgenbind.c utils.c webidl-ast.c nsgenbind-ast.c ir.c\
- duk-libdom.c duk-libdom-interface.c duk-libdom-dictionary.c\
- duk-libdom-common.c duk-libdom-generated.c\
- \
- nsgenbind-lexer.c.o nsgenbind-parser.c.o\
- webidl-lexer.c.o webidl-parser.c.o\
-)
-
-fetch git