# # Build # # for ldso debugging: <config ld_verbose="yes"/> # assert_spec linux set build_components { core init timer drivers/framebuffer server/report_rom server/dynamic_rom server/nitpicker app/pointer test/pointer test/nitpicker } build $build_components create_boot_directory # # Generate config # set config { <config> <parent-provides> <service name="ROM"/> <service name="IRQ"/> <service name="IO_MEM"/> <service name="IO_PORT"/> <service name="PD"/> <service name="CPU"/> <service name="LOG"/> </parent-provides> <default caps="100"/> <start name="timer"> <resource name="RAM" quantum="1M"/> <provides> <service name="Timer"/> </provides> <route> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> </route> </start> <start name="fb_sdl" ld="no"> <resource name="RAM" quantum="6M"/> <config buffered="yes" width="1280" height="720" depth="16"/> <route> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Capture"> <child name="nitpicker"/> </service> <service name="Event"> <child name="nitpicker"/> </service> </route> </start> <start name="report_rom_nitpicker"> <binary name="report_rom"/> <resource name="RAM" quantum="1M"/> <provides> <service name="Report"/> <service name="ROM"/> </provides> <config> <policy label="pointer -> hover" report="nitpicker -> hover"/> <policy label="pointer -> xray" report="null"/> </config> <route> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> </route> </start> <start name="nitpicker"> <resource name="RAM" quantum="4M"/> <provides> <service name="Gui"/> <service name="Capture"/> <service name="Event"/> </provides> <config> <capture/> <event/> <report focus="yes" hover="yes" xray="yes"/> <domain name="pointer" layer="1" content="client" label="no" origin="pointer"/> <domain name="default" layer="3" content="client" label="yes" hover="always" focus="click"/> <policy label_prefix="pointer" domain="pointer"/> <default-policy domain="default"/> <background color="#00426f"/> <!-- indigo --> </config> <route> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Report"> <child name="report_rom_nitpicker"/> </service> </route> </start> <start name="shape-arrow"> <binary name="test-pointer"/> <resource name="RAM" quantum="2M"/> <config shape="arrow"/> <route> <service name="PD"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Report" label="shape"> <child name="pointer" label="test-label-arrow -> shape"/> </service> </route> </start> <start name="shape-blade"> <binary name="test-pointer"/> <resource name="RAM" quantum="2M"/> <config shape="blade"/> <route> <service name="PD"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Report" label="shape"> <child name="pointer" label="test-label-blade -> shape"/> </service> </route> </start> <start name="shape-bladex"> <binary name="test-pointer"/> <resource name="RAM" quantum="2M"/> <config shape="bladex"/> <route> <service name="PD"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Report" label="shape"> <child name="pointer" label="test-label-bladex -> shape"/> </service> </route> </start> <start name="shape-smiley-config"> <binary name="dynamic_rom"/> <resource name="RAM" quantum="1M"/> <provides> <service name="ROM"/> </provides> <config> <rom name="smiley.config"> <inline description="smiley"> <config shape="smiley"/> </inline> <sleep milliseconds="800" /> <inline description="smiley"> <config shape="empty"/> </inline> <sleep milliseconds="800" /> <inline description="yelims"> <config shape="yelims"/> </inline> <sleep milliseconds="800" /> <inline description="yelims"> <config shape="invisible"/> </inline> <sleep milliseconds="800" /> </rom> </config> <route> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> </route> </start> <start name="shape-smiley"> <binary name="test-pointer"/> <resource name="RAM" quantum="2M"/> <route> <service name="ROM" label="config"> <child name="shape-smiley-config" label="smiley.config"/> </service> <service name="Report" label="shape"> <child name="pointer" label="test-label-smiley -> shape"/> </service> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> </route> </start> <start name="pointer"> <resource name="RAM" quantum="1M"/> <provides> <service name="Report"/> </provides> <config shapes="yes" verbose="no"/> <route> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="Gui"> <child name="nitpicker"/> </service> <service name="ROM" label="xray"> <child name="report_rom_nitpicker"/> </service> <service name="ROM" label="hover"> <child name="report_rom_nitpicker"/> </service> <service name="ROM"> <parent/> </service> <service name="CPU"> <parent/> </service> </route> </start> <start name="test-no-match"> <binary name="testnit"/> <resource name="RAM" quantum="2M"/> <route> <service name="LOG"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Gui"> <child name="nitpicker"/> </service> </route> </start> <start name="test-label-smiley"> <binary name="testnit"/> <resource name="RAM" quantum="2M"/> <route> <service name="LOG"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Gui"> <child name="nitpicker"/> </service> </route> </start> <start name="test-label-arrow"> <binary name="testnit"/> <resource name="RAM" quantum="2M"/> <route> <service name="LOG"> <parent/> </service> <service name="PD"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Gui"> <child name="nitpicker"/> </service> </route> </start> <start name="test-label-blade"> <binary name="testnit"/> <resource name="RAM" quantum="2M"/> <route> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Gui"> <child name="nitpicker"/> </service> </route> </start> <start name="test-label-bladex"> <binary name="testnit"/> <resource name="RAM" quantum="2M"/> <route> <service name="PD"> <parent/> </service> <service name="LOG"> <parent/> </service> <service name="CPU"> <parent/> </service> <service name="ROM"> <parent/> </service> <service name="Timer"> <child name="timer"/> </service> <service name="Gui"> <child name="nitpicker"/> </service> </route> </start> </config>} install_config $config # # Boot modules # # generic modules set boot_modules { init ld.lib.so timer fb_sdl report_rom dynamic_rom nitpicker pointer test-pointer testnit } # "lsort -unique" removes duplicates but core must be first build_boot_image "core [lsort -unique $boot_modules]" run_genode_until forever # vi: set ft=tcl :