summaryrefslogtreecommitdiff
path: root/Docs/BUILDING-GTK
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2015-06-15 13:36:53 +0100
committerVincent Sanders <vince@kyllikki.org>2015-06-17 21:35:40 +0100
commit3e2270482f73528949746fc24a01d0f0c01baee8 (patch)
tree1d6b4914c6cf8b59aaa0c19ba322e4c56eb2a836 /Docs/BUILDING-GTK
parent59fbd51a77a684c15b189f666e4359bfd820f627 (diff)
downloadnetsurf-3e2270482f73528949746fc24a01d0f0c01baee8.tar.gz
netsurf-3e2270482f73528949746fc24a01d0f0c01baee8.tar.bz2
Make GTK resource handling configurable
This makes the GTK resource handling configurable in the same way as all other pkg-config style feature options. It is now possible to completely disable compiled in resources if wanted as well as forcing inline pixdata on if desired.
Diffstat (limited to 'Docs/BUILDING-GTK')
-rw-r--r--Docs/BUILDING-GTK46
1 files changed, 40 insertions, 6 deletions
diff --git a/Docs/BUILDING-GTK b/Docs/BUILDING-GTK
index dab2bef07..4ac0fc89e 100644
--- a/Docs/BUILDING-GTK
+++ b/Docs/BUILDING-GTK
@@ -168,12 +168,14 @@
Building and executing NetSurf
--------------------------------
- First of all, you should examine the contents of Makefile.defaults
- and enable and disable relevant features as you see fit by creating
- a Makefile.config file. Some of these options can be automatically
- detected and used, and where this is the case they are set to such.
- Others cannot be automatically detected from the Makefile, so you
- will either need to install the dependencies, or set them to NO.
+ First of all, you should examine the options in Makefile.defaults
+ and gtk/Makefile.defaults and enable and disable relevant features
+ as you see fit by editing a Makefile.config file.
+
+ Some of these options can be automatically detected and used, and
+ where this is the case they are set to such. Others cannot be
+ automatically detected from the Makefile, so you will either need to
+ install the dependencies, or set them to NO.
You should then obtain NetSurf's dependencies, keeping in mind which options
you have enabled in the configuration file. See the next section for
@@ -197,6 +199,38 @@
sets up some environment variables which enable NetSurf to find its
resources.
+ Builtin resources
+-------------------
+
+ There are numerous resources that accompany NetSurf, such as the
+ image files for icons, cursors and the ui builder files that
+ construct the browsers interface.
+
+ Some of these resources can be compiled into the browser executable
+ removing the need to install these resources separately. The GLib
+ library on which GTK is based provides this functionality to
+ NetSurf.
+
+ Up until GLib version 2.32 only the GDK pixbuf could be integrated
+ in this way and is controlled with the NETSURF_USE_INLINE_PIXBUF
+ variable (set in makefile.config).
+
+ Glib version 2.32 and later integrated support for any file to be a
+ resource while depreciating the old inline pixbuf interface. NetSurf
+ gtk executables can integrate many resources using this interface,
+ configuration is controlled with the NETSURF_USE_GRESOURCE variable.
+
+ Loading from file is the fallback if a resource has not been
+ compiled in, because of this if both of these features are
+ unavailable (or disabled) NetSurf will automatically fall back to
+ loading all its resources from files.
+
+ The resource initialisation within the browser ensures it can access
+ all the resources at start time, however it does not verify the
+ resources are valid so failures could still occur subsequently. This
+ is especially true for file based resources as they can become
+ inaccessible after initialisation.
+
Note for packagers
====================