LINUX.ORG.RU
Ответ на: комментарий от jabocrack

там в старом еср вроде ж какие то уязвимости были.

Ну, этот -esr (45.9) только недавно перестал быть -esr, а до этого исправно патчился в Debian. Потом перекочевал в stretch. Но я полагаю, что его больше патчить не будут, как делали раньше. Раньше Debain сопровождал и патчил даже снятые Мозиллой с поддержки браузеры. Но сейчас это уже тяжело. Да и тогда было тяжело.

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

Только, когда поставишь, сделай hold пакету (зависит от того, чем пользуешься уже - aptitude или apt-get), а то он все время будет хотеть обновиться на 52.

Zubok ★★★★★
()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

скоро все попробую
система доставится в виртуалку

jabocrack
() автор топика

*victory*

GTK2? А зачем? Новые версии — никак. Старые еще как-то можно.

xoraby
()

не знаю, как там в дебиане, но 52.x-esr с gtk2 пока еще собирается

вот мой конфиг, если что

. $topsrcdir/browser/config/mozconfig

ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib

ac_add_options --enable-default-toolkit=cairo-gtk2

ac_add_options --enable-official-branding
#ac_add_options --with-user-appdir=".xdg/share/mozilla"

# System libraries
ac_add_options --with-pthreads
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --with-system-bz2
ac_add_options --with-system-png
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-icu
ac_add_options --with-system-harfbuzz
ac_add_options --enable-system-sqlite
ac_add_options --enable-system-ffi
#ac_add_options --enable-system-cairo
ac_add_options --enable-system-pixman

# Features
#ac_add_options --enable-gstreamer=1.0
ac_add_options --enable-alsa
#ac_add_options --enable-libjpeg-turbo

ac_add_options --disable-gconf
ac_add_options --disable-dbus
ac_add_options --disable-necko-wifi
ac_add_options --disable-pulseaudio

ac_add_options --disable-crashreporter
ac_add_options --disable-updater
#ac_add_options --disable-installer
ac_add_options --disable-debug-symbols
ac_add_options --disable-tests
ac_add_options --disable-parental-controls
ac_add_options --disable-webrtc
#ac_add_options --disable-websms-backend
ac_add_options --disable-webspeech
ac_add_options --disable-synth-speechd

ac_add_options --disable-elf-hack

# enable ccache                                                                                                                                                         
ac_add_options --with-ccache                                                                                                                                            

для --with-system-harfbuzz нужен еще этот патчик - http://linuxfromscratch.org/patches/downloads/firefox/firefox-52.0.2-system_g...

ananas ★★★★★
()

Спроси Зенитура, это же он делает свои сборки Firefox

anonymous
()
Ответ на: комментарий от ananas

для --with-system-harfbuzz нужен еще этот патчик

Не-а, не нужен. При условии, что на компе установлен fontconfig-infinality-ultimate.

blitz@inode ~/abs/extra/firefox-52 % cat mozconfig.in 
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@
mk_add_options PYTHON="$(which python2)"

export PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/usr/share/pkgconfig

# Build target
ac_add_options --enable-application=browser

# Release branding
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
mk_add_options BUILD_OFFICIAL=1
mk_add_options MOZILLA_OFFICIAL=1
ac_add_options --enable-release
ac_add_options --enable-official-branding=no
ac_add_options --prefix=/usr

export MOZ_ADDON_SIGNING=1
export MOZ_REQUIRE_SIGNING=
mk_add_options MOZ_ADDON_SIGNING=1
mk_add_options MOZ_REQUIRE_SIGNING=

# Compiler and linker
ac_add_options --enable-elf-hack=yes
# Replaced with lld
ac_add_options --enable-gold=no
ac_add_options --enable-pie=yes

ac_add_options --enable-jemalloc=4
ac_add_options --enable-replace-malloc

# System libraries
ac_add_options --with-system-bz2
## From firefox-40, using system cairo causes firefox to crash
## frequently when it is doing background rendering in a tab.
## disables videoplay
## ac_add_options --with-system-cairo
ac_add_options --with-system-icu
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-png
ac_add_options --with-system-zlib
ac_add_options --enable-libjpeg-turbo	# --with-system-jpeg
ac_add_options --enable-system-ffi
ac_add_options --enable-system-hunspell
ac_add_options --enable-system-pixman
ac_add_options --enable-system-sqlite
ac_add_options --enable-libproxy=no

# Build

ac_add_options --enable-gconf=yes
ac_add_options --enable-gio=yes
# ac_add_options --enable-gnomeui=yes

# Features
ac_add_options --disable-js-shell
ac_add_options --enable-extensions=default
ac_add_options --enable-startup-notification
ac_add_options --enable-crashreporter=no
ac_add_options --with-crashreporter-enable-percent=0
ac_add_options --enable-maintenance-service=no
ac_add_options --enable-parental-controls
ac_add_options --enable-safe-browsing=no
ac_add_options --enable-url-classifier=no
ac_add_options --enable-updater=no
ac_add_options --enable-update-channel=''

# Tests and debug
mk_add_options MOZ_DEBUG=0
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-ipdl-tests
ac_add_options --enable-debug-js-modules=no
ac_add_options --disable-debug-symbols
# ac_add_options --disable-gps-debug
ac_add_options --disable-profiling

# Package
mk_add_options STRIP_FLAGS="--strip-debug"
ac_add_options --enable-strip=yes
ac_add_options --enable-install-strip=yes
ac_add_options --enable-signmar=no
ac_add_options --enable-verify-mar=no

# Features
ac_add_options --enable-sandbox=yes
# Breaks everything
# ac_add_options --enable-content-sandbox=yes
ac_add_options --enable-bundled-fonts=yes
ac_add_options --enable-b2g-bt=no
ac_add_options --enable-b2g-camera=no
ac_add_options --enable-b2g-ril=no
ac_add_options --enable-mozril-geoloc=no
ac_add_options --disable-gpsd

ac_add_options --enable-necko-wifi=no
ac_add_options --enable-nfc=no
ac_add_options --enable-webrtc=no
ac_add_options --disable-webspeech
ac_add_options --disable-webspeechtestbackend

ac_add_options --enable-gamepad=no # default yes?
ac_add_options --enable-eme=widevine	#adobe
ac_add_options --enable-alsa
ac_add_options --enable-jack
ac_add_options --enable-ffmpeg
ac_add_options --enable-fmp4
## 404 m51
## ac_add_options --enable-media-navigator=no
ac_add_options --enable-skia-pdf
blitz
()
Ответ на: комментарий от jabocrack

Да, это Arch.
Можно собирать на любом дистрибутиве, вкуда завезли Clang/LLVM.

blitz
()
Ответ на: комментарий от ananas

не знаю, как там в дебиане, но 52.x-esr с gtk2 пока еще собирается

На Фре тоже собрал firefox-esr-52.3.0_1,1/firefox-esr-i18n-52.3.0 на Gtk2 - работает.

Как долго продлится сей чудный профит?

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

Как долго продлится сей чудный профит?

нынешний esr еще год проживет. дальше, скорее всего, труба

ananas ★★★★★
()
Ответ на: комментарий от ananas

С того, что эта опция отключает поиск
«Дескать, нечего детворе пользоваться поиском»

Если у тебя собирается firefox-52.3.0-esr и работает поиск с этой опцией,
то, что-то явно поломано в конфигурации.

Ниабижайся, это не упрёк тебе.
Потратил вечер, разбираюсь с этой опцией и нашёл место в сурсе, где она и срабатывает.

blitz
()
Ответ на: комментарий от ananas

В файлах конфигурации - .mozconfig old.configure - не увидится
Вот в сурсах - найдутся те места, где эта опция работает

Выложил приватный fennec 52, собранный с опцией --disable-parental-controls.
Тут же получил баг-репорты - «Поиск не работает! Сделай, как было»
Сделал и вернул обратно.

--disable-parental-controls - писала некая пенсианерка. Сколько файлов нужно найти и поменять работу этой - не стал заниматься.

blitz
()
Ответ на: комментарий от blitz

у меня эта опция торчит в конфиге уже хрен знает сколько релизов, и ни разу проблем с поиском из адресной строки не возникало. что я делаю не так?

ananas ★★★★★
()
Ответ на: комментарий от ananas

тут другая проблема есть, при сборке с gcc7, при флагах оптимизации, отличных от -O2, появляются омерзительные артефакты в интерфейсе. правда, на 52.3 еще не проверял, пофиксили это, или нет

ananas ★★★★★
()
Ответ на: комментарий от ananas
CLANG=true

OPT_CFLAGS=O3
OPT_LDFLAGS="${OPT_CFLAGS}"

GCC_GRAPHITE=true

LTO=false
PGO=true
PGO_GEN=false
PGO_USE=false
PGO_DATA_DIR="${BUILDDIR}/pgo_data"

CCACHE=true

GTK3=true

CLANG_LTO_CFLAGS="-flto=full"
CLANG_LTO_CXXFLAGS="${CLANG_LTO_CFLAGS}"
CLANG_LTO_LDFLAGS="-Wl,-plugin-opt=${OPT_LDFLAGS}"

configure() {
  msg "Starting configure()"

  unset -v CC CXX LD AR NM RANLIB CFLAGS CXXFLAGS CPPFLAGS LDFLAGS

Clang - умеет собирать firefox-52.esr с -О3.

blitz
()
Ответ на: комментарий от blitz

Так это же замечательно! Нефиг сливать опечатки в гугл.

anonymous
()

Собираю Firefox 52 под CentOS 5. Компилятор GCC 4.8. Патчи для понижения необходимой версии GTK2 с 2.18 до 2.10 успешно наложились: похоже что с версии 45 не было существенных изменений. Только configure.in переехал в old-configure.in, а также в toolkit/moz.configure

Собрать мне пока не удалось. Упёрся в то, что harfbuzz хочет функцию из GLIB 2.14, а у меня GLIB 2.12. Ищу способы обойти.

In file included from /build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:31:0,
                 from /build/firefox-52.3.0esr/objdir/gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.cpp:38:
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.h:40:27: warning: ‘hb_glib_script_to_script’ initialized and declared ‘extern’ [enabled by default]
 hb_glib_script_to_script (GUnicodeScript script);
                           ^
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.h:40:27: error: ‘GUnicodeScript’ was not declared in this scope
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.h:42:11: error: ‘GUnicodeScript’ does not name a type
 HB_EXTERN GUnicodeScript
           ^
In file included from /build/firefox-52.3.0esr/objdir/gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.cpp:38:0:
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:161:27: error: redefinition of ‘hb_script_t hb_glib_script_to_script’
 hb_glib_script_to_script (GUnicodeScript script)
                           ^
In file included from /build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:31:0,
                 from /build/firefox-52.3.0esr/objdir/gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.cpp:38:
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.h:40:1: error: ‘hb_script_t hb_glib_script_to_script’ previously defined here
 hb_glib_script_to_script (GUnicodeScript script);
 ^
In file included from /build/firefox-52.3.0esr/objdir/gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.cpp:38:0:
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:161:27: error: ‘GUnicodeScript’ was not declared in this scope
 hb_glib_script_to_script (GUnicodeScript script)
                           ^
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:176:1: error: ‘GUnicodeScript’ does not name a type
 GUnicodeScript
 ^
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc: In function ‘hb_unicode_combining_class_t hb_glib_unicode_combining_class(hb_unicode_funcs_t*, hb_codepoint_t, void*)’:
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:201:75: error: ‘g_unichar_combining_class’ was not declared in this scope
   return (hb_unicode_combining_class_t) g_unichar_combining_class (unicode);
                                                                           ^
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc: In function ‘hb_script_t hb_glib_unicode_script(hb_unicode_funcs_t*, hb_codepoint_t, void*)’:
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:236:65: error: ‘g_unichar_get_script’ was not declared in this scope
   return hb_glib_script_to_script (g_unichar_get_script (unicode));
                                                                 ^
/build/firefox-52.3.0esr/gfx/harfbuzz/src/hb-glib.cc:236:66: error: ‘hb_glib_script_to_script’ cannot be used as a function
   return hb_glib_script_to_script (g_unichar_get_script (unicode));
                                                                  ^

В самом harfbuzz полно условий «Если версия Glib такая-то, то». Так что это возможно.

Из других проблем. В какой-то момент компиляция встала из-за вызовов несуществующих функций (V4L2). Помогло обновление пакета kernel-headers с 2.6.18 до 2.6.23 из Fedora 8.

Самая существенная проблема - мне пришлось установить libxcb 1.4, а также обновить системный libX11 до версии 1.2. Чтобы компиляция в принципе могла начаться. Это сводит на нет все плюсы моей сборки: работа даже в самых старых дистрибутивах Linux. Минимально необходимый год выпуска дистра повышается с 2007 до 2010. А раз так, то уж лучше использовать официальную сборку на CentOS 6.

Может быть, эти либы можно прилинковать статически? Только свежие версии, а не минимально необходимые. Я вижу здесь директорию 3rdparty. Помогите, пожалуйста.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 2)
31 октября 2017 г.
Ответ на: комментарий от icefreeze

А такой вариант там есть firefox-gtk2-52.4.1esr 32bit с алса (без пульсы)? Если да, пожалуйста, подкинь ссылку.

bohm ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.