mirror of
https://github.com/genodelabs/genode.git
synced 2025-04-11 13:22:33 +00:00
parent
923b3ec54d
commit
040d0c9e42
@ -4,15 +4,19 @@
|
||||
* \date 2010-08-26
|
||||
*/
|
||||
|
||||
/* Genode includes */
|
||||
#include <base/env.h>
|
||||
#include <dataspace/client.h>
|
||||
#include <os/timed_semaphore.h>
|
||||
#include <rom_session/connection.h>
|
||||
#include <util/arg_string.h>
|
||||
|
||||
/* libc includes */
|
||||
#include <assert.h>
|
||||
#include <string.h>
|
||||
#include <zlib.h>
|
||||
|
||||
/* Qt includes */
|
||||
#include <QtGui>
|
||||
|
||||
#include <qnitpickerplatformwindow.h>
|
||||
@ -47,7 +51,7 @@ const char *config = " \
|
||||
<archive name=\"plugin.tar\"/> \
|
||||
</config> \
|
||||
</start> \
|
||||
<start name=\"init\" caps=\"200\"> \
|
||||
<start name=\"init\" caps=\"2000\"> \
|
||||
<resource name=\"RAM\" quantum=\"2G\"/> \
|
||||
<configfile name=\"config.plugin\"/> \
|
||||
<route> \
|
||||
@ -436,6 +440,8 @@ void QPluginWidget::showEvent(QShowEvent *event)
|
||||
QNitpickerPlatformWindow *platform_window =
|
||||
dynamic_cast<QNitpickerPlatformWindow*>(window()->windowHandle()->handle());
|
||||
|
||||
assert(_env != nullptr);
|
||||
|
||||
_plugin_starter = new PluginStarter(_env,
|
||||
_plugin_url, _plugin_args,
|
||||
_max_width, _max_height,
|
||||
|
@ -123,7 +123,7 @@ append boot_modules {
|
||||
testnit
|
||||
arora
|
||||
ld.lib.so
|
||||
libc.lib.so libm.lib.so lwip.lib.so posix.lib.so
|
||||
libc.lib.so libm.lib.so lwip.lib.so
|
||||
zlib.lib.so libpng.lib.so jpeg.lib.so libssl.lib.so libcrypto.lib.so
|
||||
freetype.lib.so
|
||||
libc_pipe.lib.so
|
||||
|
37
repos/ports/src/app/arora/arora_component.cc
Normal file
37
repos/ports/src/app/arora/arora_component.cc
Normal file
@ -0,0 +1,37 @@
|
||||
/*
|
||||
* \brief Entry point for Arora
|
||||
* \author Christian Prochaska
|
||||
* \date 2017-05-22
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (C) 2017 Genode Labs GmbH
|
||||
*
|
||||
* This file is part of the Genode OS framework, which is distributed
|
||||
* under the terms of the GNU Affero General Public License version 3.
|
||||
*/
|
||||
|
||||
/* Genode includes */
|
||||
#include <libc/component.h>
|
||||
|
||||
/* libc includes */
|
||||
#include <stdlib.h> /* 'exit' */
|
||||
|
||||
/* Qt includes */
|
||||
#include <qpluginwidget/qpluginwidget.h>
|
||||
|
||||
/* provided by the application */
|
||||
extern "C" int main(int argc, char const **argv);
|
||||
|
||||
void Libc::Component::construct(Libc::Env &env)
|
||||
{
|
||||
Libc::with_libc([&] {
|
||||
|
||||
QPluginWidget::set_env(&env);
|
||||
|
||||
int argc = 1;
|
||||
char const *argv[] = { "arora", 0 };
|
||||
|
||||
exit(main(argc, argv));
|
||||
});
|
||||
}
|
@ -74,7 +74,7 @@ div.annotation p { font-style:italic; }
|
||||
there is no need for a browser-specific solution. We can just run an arbitrary
|
||||
fully-featured Genode subsystem as browser plugin:
|
||||
</p>
|
||||
<embed src="rom:///nitpicker_plugin.tar" args="ram_quota=32M" type="application/x-genode-plugin" width="640px" height="480px"><br>
|
||||
<embed src="rom:///nitpicker_plugin.tar" args="ram_quota=32M, caps=1000" type="application/x-genode-plugin" width="640px" height="480px"><br>
|
||||
<p>
|
||||
The plugin above consists of multiple processes and uses the same
|
||||
binaries as the Genode system you are running. The most significant advantage of this
|
||||
|
@ -10,7 +10,7 @@
|
||||
<service name="Nitpicker"/>
|
||||
</parent-provides>
|
||||
<default-route> <any-service> <any-child/> <parent/> </any-service> </default-route>
|
||||
<start name="framebuffer">
|
||||
<start name="framebuffer" caps="100">
|
||||
<binary name="nit_fb"/>
|
||||
<resource name="RAM" quantum="4M"/>
|
||||
<provides>
|
||||
@ -20,7 +20,7 @@
|
||||
<route> <any-service> <parent/> </any-service> </route>
|
||||
<config xpos="0" ypos="0" width="640" height="480"/>
|
||||
</start>
|
||||
<start name="nitpicker">
|
||||
<start name="nitpicker" caps="100">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<provides><service name="Nitpicker"/></provides>
|
||||
<config>
|
||||
@ -30,16 +30,16 @@
|
||||
<default-policy domain="default"/>
|
||||
</config>
|
||||
</start>
|
||||
<start name="pointer">
|
||||
<start name="pointer" caps="100">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
</start>
|
||||
<start name="launchpad">
|
||||
<start name="launchpad" caps="400">
|
||||
<resource name="RAM" quantum="2G"/>
|
||||
<config xpos="50" ypos="10" width="400" height="400">
|
||||
<launcher name="testnit" ram_quota="1M" />
|
||||
<launcher name="launchpad" ram_quota="6M">
|
||||
<launcher name="testnit" ram_quota="1M" caps="100" />
|
||||
<launcher name="launchpad" ram_quota="6M" caps="200">
|
||||
<config xpos="90" ypos="50" width="400" height="400">
|
||||
<launcher name="testnit" ram_quota="512K" />
|
||||
<launcher name="testnit" ram_quota="512K" caps="100" />
|
||||
</config>
|
||||
</launcher>
|
||||
</config>
|
||||
|
@ -33,6 +33,8 @@ HEADERS_FILTER_OUT = \
|
||||
|
||||
QT_MAIN_STACK_SIZE = 768*1024
|
||||
|
||||
SRC_CC += arora_component.cc
|
||||
|
||||
LIBS += libm libc_lwip libc_lwip_nic_dhcp
|
||||
|
||||
RESOURCES += demo_html.qrc
|
||||
@ -84,5 +86,3 @@ vpath % $(ARORA_PORT_DIR)/src/app/arora/src/useragent
|
||||
vpath % $(ARORA_PORT_DIR)/src/app/arora/src/utils
|
||||
|
||||
-include $(QT_TMPL_DIR)/target_final.inc
|
||||
|
||||
LIBS += posix
|
||||
|
Loading…
x
Reference in New Issue
Block a user