Создание более простого XulRunner для использования HTML / JavaScript? - PullRequest
2 голосов
/ 23 января 2012

Есть ли способ сделать более компактную HTML / Javascript-ориентированную сборку / пакет компонентов Mozilla XulRunner, исключая некоторые из более тяжелых функций XUL-платформы?

Справочная информация:

Мы создаем кроссплатформенное приложение с HTML / JavaScript GUI. Хост-приложение работает в .NET / Mono, а графический интерфейс отображается с помощью Mozilla XulRunner через оболочку GeckoFx. Все отлично работает.

У нас есть одна проблема: компоненты XulRunner (9.0.x) весом 28 МБ делают установщик приложения немного больше, чем хотелось бы. XulRunner не нужно развертывать отдельно, если у пользователя уже установлен Firefox, но мы бы хотели уменьшить количество пользователей, которые этого не делают.

Мы уже исключили все исполняемые файлы XulRunner из официальной сборки выпуска, чтобы уменьшить размер пакета до его текущего размера.

Мне приходит в голову, что мы используем только небольшое подмножество платформы XulRunner. Нам не требуются какие-либо функции XUL, только HTML, JavaScript и CSS. Это заставляет меня думать, что мы могли бы сделать собственную сборку, которая исключает некоторые части, которые нам не нужны, но я не очень хорошо разбираюсь в сборке Mozilla .

Любая помощь будет принята с благодарностью!

1 Ответ

3 голосов
/ 23 января 2012

Обычно вы будете использовать параметры сборки, такие как --disable-tests (не создавайте эти тестовые исполняемые файлы) и --enable-optimize / --disable-debug.Кроме того, вы должны быть в состоянии использовать опцию --disable-xul.Однако вы должны знать, что такие опции, как --disable-xul, создают сборки, которые не так хорошо протестированы, как официальный XULRunner.Другие параметры, которые должны быть в порядке в простом приложении:

--disable-jsd           Disable JavaScript debug library
--disable-plugins       Disable plugins support
--disable-view-source   Disable view source support
--disable-accessibility Disable accessibility support
--disable-printing      Disable printing support
--disable-crashreporter Disable breakpad crash reporting
--disable-mathml        Disable MathML support
--disable-installer     Disable building of installer
--disable-updater       Disable building of updater
--disable-activex       Disable building of ActiveX control
--disable-activex-scripting  Disable building of ActiveX scripting support (win32)
--disable-feeds         Disable feed handling and processing components

Другие варианты можно найти, выполнив поиск MOZ_ARG_DISABLE_BOOL в configure.in .

...