[feature request] --no-libcanberra

Support and discussions for the x86/x64 Linux version of Pale Moon.

Moderators: trava90, satrow, Indalecio

User avatar
[DC-1]
Newbie
Newbie
Posts: 4
Joined: Thu Jan 12, 2017 6:24 am

[feature request] --no-libcanberra

Postby [DC-1] » Tue Mar 07, 2017 12:35 pm

I've found that libcanberra.so.0 is hardcoded in widget/gtk/nsSound.cpp:

Code: Select all

    if (!libcanberra) {
        libcanberra = PR_LoadLibrary("libcanberra.so.0");
        if (libcanberra) {

Could you make a compile or runtime option for disable this? I don't want libcanberra at all.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 18339
Joined: Sun Aug 28, 2011 5:27 pm
Location: 58.5°N 15.5°E
Contact:

Re: [feature request] --no-libcanberra

Postby Moonchild » Tue Mar 07, 2017 1:40 pm

It will attempt to load it at runtime, but won't use it if not found. So it's a "use it if present" kind of deal. Why do you want to prevent even the attempt at using it?
Light travels faster than sound. That's why some people look brilliant, until you hear them speak.
Image

User avatar
[DC-1]
Newbie
Newbie
Posts: 4
Joined: Thu Jan 12, 2017 6:24 am

Re: [feature request] --no-libcanberra

Postby [DC-1] » Tue Mar 07, 2017 5:29 pm

I don't wanna waste resources, e.g. file descriptors, memory, hdd. I'm building a very low resources machine, every megabyte worth.
I'm using my own compiled version for months, it's just a question if there is a chance to save time for me with not patching before every compiling.
Deleting libcanberra.so.0 is not an option, because i use sw when it has a useful function. (claws-mail)

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 18339
Joined: Sun Aug 28, 2011 5:27 pm
Location: 58.5°N 15.5°E
Contact:

Re: [feature request] --no-libcanberra

Postby Moonchild » Tue Mar 07, 2017 6:19 pm

:lol: Um.. the lib is, what.. 10KB, if that? I doubt you're going to save much by not loading it...
Light travels faster than sound. That's why some people look brilliant, until you hear them speak.
Image

stevepusser
Fanatic
Fanatic
Posts: 187
Joined: Sat Aug 01, 2015 6:33 pm
Location: California

Re: [feature request] --no-libcanberra

Postby stevepusser » Wed Mar 08, 2017 2:39 am

If you're compiling Pale Moon for yourself, what's to keep you from commenting out or deleting the offending code and testing the build?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 18339
Joined: Sun Aug 28, 2011 5:27 pm
Location: 58.5°N 15.5°E
Contact:

Re: [feature request] --no-libcanberra

Postby Moonchild » Wed Mar 08, 2017 2:44 am

stevepusser wrote:If you're compiling Pale Moon for yourself, what's to keep you from commenting out or deleting the offending code and testing the build?

it's just a question if there is a chance to save time for me with not patching before every compiling
Light travels faster than sound. That's why some people look brilliant, until you hear them speak.
Image

User avatar
[DC-1]
Newbie
Newbie
Posts: 4
Joined: Thu Jan 12, 2017 6:24 am

Re: [feature request] --no-libcanberra

Postby [DC-1] » Mon Mar 13, 2017 4:41 am

Moonchild wrote::lol: Um.. the lib is, what.. 10KB, if that? I doubt you're going to save much by not loading it...

70k + ~200k with vorbis libraries.

Code: Select all

$ lddtree  /usr/lib/i386-linux-gnu/libcanberra.so
/usr/lib/i386-linux-gnu/libcanberra.so (75,796) (interpreter => none)
    libvorbisfile.so.3 => /usr/lib/i386-linux-gnu/libvorbisfile.so.3 (38,492)
        libvorbis.so.0 => /usr/lib/i386-linux-gnu/libvorbis.so.0 (173,800)


By the way --disable-xinerama option exists, which library is really 10kb. (9,668)
Ok, forget it, i can live with patching.

Walter Dnes
Fanatic
Fanatic
Posts: 242
Joined: Thu Jul 30, 2015 8:29 pm
Location: Vaughan, ON, Canada

Re: [feature request] --no-libcanberra

Postby Walter Dnes » Mon Mar 13, 2017 11:05 am

[DC-1] wrote:By the way --disable-xinerama option exists, which library is really 10kb. (9,668)
Ok, forget it, i can live with patching.


Speaking of options, you can do 2 levels of searching for them. First are the documented options. On my system "pmsrc" is the source directory. This script cycles through all the "configure" files, and executes each one with the "--help" option. Look for "Optional Features:" sections for the "goodies"...

Code: Select all

#!/bin/bash
rm -rf pmoptions.txt
for configfile in `find pmsrc -name configure`
do
   echo "=====================================" >> pmoptions.txt
   echo "From file ${configfile}" >> pmoptions.txt
   echo >> pmoptions.txt
   ${configfile} --help >> pmoptions.txt
done

To get a listing of every last possible option (Look Ma, no documentation!) I run...

Code: Select all

grep -rn -- "--enable\|--disable\|--with" pmsrc/ > options.txt

which generates a lot of output. I disable the following items on the personal builds I run at home. Some of these items are probably redundant. I wish there was a master listing somewhere of the defaults

Code: Select all

ac_add_options --disable-accessibility
ac_add_options --disable-b2g
ac_add_options --disable-dbus
ac_add_options --disable-debug
ac_add_options --disable-gamepad
ac_add_options --disable-gconf
ac_add_options --disable-gio
ac_add_options --disable-gstreamer
ac_add_options --disable-harfbuzz
ac_add_options --disable-installer
ac_add_options --disable-necko-wifi
ac_add_options --disable-official-branding
ac_add_options --disable-omx-plugin
ac_add_options --disable-parental-controls
ac_add_options --disable-profiling
ac_add_options --disable-pulseaudio
ac_add_options --disable-safe-browsing
ac_add_options --disable-telemetry
ac_add_options --disable-updater
ac_add_options --disable-url-classifier
ac_add_options --disable-webspeech


And stuff that I explicitly enable...

Code: Select all

ac_add_options --enable-alsa
ac_add_options --enable-application=browser
ac_add_options --enable-boehm
ac_add_options --enable-eme
ac_add_options --enable-ffmpeg
ac_add_options --enable-fmp4
ac_add_options --enable-freetype
ac_add_options --enable-gnu-ld
ac_add_options --enable-gold
ac_add_options --enable-install-strip
ac_add_options --enable-jemalloc
ac_add_options --enable-jemalloc-lib
ac_add_options --enable-libjpeg-turbo
ac_add_options --enable-multithread
ac_add_options --enable-ogg
ac_add_options --enable-optimize
ac_add_options --enable-opus
ac_add_options --enable-png
ac_add_options --enable-pthreads
ac_add_options --enable-raw
ac_add_options --enable-stdcxx-compat
ac_add_options --enable-strip
ac_add_options --enable-svg
ac_add_options --enable-threads
ac_add_options --enable-threadsafe
ac_add_options --enable-wave
ac_add_options --enable-webgl
ac_add_options --enable-webm
ac_add_options --enable-x86-optimizations
ac_add_options --enable-xlib
ac_add_options --x-libraries=/usr/lib


Return to “Pale Moon for Linux”

Who is online

Users browsing this forum: Google Feedfetcher [RSS], gv1234 and 4 guests