Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 204632
Collapse All | Expand All

(-)configure.in (-1 / +13 lines)
Lines 25-30 AC_HEADER_STDC Link Here
25
AM_PROG_LIBTOOL
25
AM_PROG_LIBTOOL
26
AM_PATH_GLIB_2_0
26
AM_PATH_GLIB_2_0
27
27
28
AM_PROG_CC_C_O
29
28
GNOME_DEBUG_CHECK
30
GNOME_DEBUG_CHECK
29
GNOME_COMPILE_WARNINGS([maximum])
31
GNOME_COMPILE_WARNINGS([maximum])
30
GNOME_CXX_WARNINGS
32
GNOME_CXX_WARNINGS
Lines 179-184 AC_SUBST([YELP_SEARCH_LIBS]) Link Here
179
# *****
181
# *****
180
182
181
GECKO_INIT([MOZILLA])
183
GECKO_INIT([MOZILLA])
184
GECKO_DEFINES
182
185
183
AC_SUBST([MOZILLA])
186
AC_SUBST([MOZILLA])
184
AC_SUBST([MOZILLA_FLAVOUR])
187
AC_SUBST([MOZILLA_FLAVOUR])
Lines 190-200 AC_SUBST([MOZILLA_GLUE_LIBS]) Link Here
190
193
191
case "$MOZILLA" in
194
case "$MOZILLA" in
192
xulrunner) gecko_min_version=1.8 ;;
195
xulrunner) gecko_min_version=1.8 ;;
196
libxul*) gecko_min_version=1.9 ;;
193
*firefox) gecko_min_version=1.5 ;;
197
*firefox) gecko_min_version=1.5 ;;
194
*) AC_MSG_ERROR([$gecko_cv_gecko is not supported])
198
*) AC_MSG_ERROR([$gecko_cv_gecko is not supported])
195
esac
199
esac
196
200
197
PKG_CHECK_MODULES([MOZILLA_COMPONENT],[${gecko_cv_gecko}-xpcom >= $gecko_min_version $gecko_cv_extra_pkg_dependencies])
201
if test $MOZILLA = libxul-embedding; then
202
	PKG_CHECK_MODULES([MOZILLA_COMPONENT],[libxul-embedding $gecko_cv_extra_pkg_dependencies])
203
	MOZILLA_COMPONENT_CFLAGS="$MOZILLA_COMPONENT_CFLAGS `$PKG_CONFIG --cflags ${gecko_cv_gecko}` `$PKG_CONFIG --define-variable=includetype=unstable --cflags ${gecko_cv_gecko}`"
204
elif test $MOZILLA = libxul; then
205
	PKG_CHECK_MODULES([MOZILLA_COMPONENT],[libxul $gecko_cv_extra_pkg_dependencies])
206
	MOZILLA_COMPONENT_CFLAGS="$MOZILLA_COMPONENT_CFLAGS `$PKG_CONFIG --cflags ${gecko_cv_gecko}` `$PKG_CONFIG --define-variable=includetype=unstable --cflags ${gecko_cv_gecko}`"
207
else
208
	PKG_CHECK_MODULES([MOZILLA_COMPONENT],[${gecko_cv_gecko}-xpcom >= $gecko_min_version $gecko_cv_extra_pkg_dependencies])
209
fi
198
210
199
dnl ====================================
211
dnl ====================================
200
dnl = zlib for help converters
212
dnl = zlib for help converters
(-)src/yelp-gecko-services.cpp (-5 / +11 lines)
Lines 21-27 Link Here
21
 */
21
 */
22
22
23
#include <mozilla-config.h>
23
#include <mozilla-config.h>
24
#include "config.h"
24
#include <config.h>
25
25
26
#include <stdlib.h>
26
#include <stdlib.h>
27
#include <unistd.h>
27
#include <unistd.h>
Lines 30-41 Link Here
30
30
31
#include <nsCOMPtr.h>
31
#include <nsCOMPtr.h>
32
#include <nsIComponentManager.h>
32
#include <nsIComponentManager.h>
33
#include <nsComponentManagerUtils.h>
33
#include <nsIComponentRegistrar.h>
34
#include <nsIComponentRegistrar.h>
34
#include <nsIGenericFactory.h>
35
#include <nsIGenericFactory.h>
35
#include <nsILocalFile.h>
36
#include <nsILocalFile.h>
36
#include <nsIPrintSettings.h>
37
#include <nsIPrintSettings.h>
37
#include <nsServiceManagerUtils.h>
38
#include <nsServiceManagerUtils.h>
39
40
#ifdef XPCOM_GLUE
41
#include <nsXPCOMGlue.h>
42
#else
38
#include <nsXPCOM.h>
43
#include <nsXPCOM.h>
44
#endif
39
45
40
#include "yelp-gecko-services.h"
46
#include "yelp-gecko-services.h"
41
47
Lines 298-304 PrintListener::SetPrintSettings (YelpPri Link Here
298
  target->SetPrintInColor (gtk_print_settings_get_use_color (settings->config));
304
  target->SetPrintInColor (gtk_print_settings_get_use_color (settings->config));
299
305
300
  target->SetPaperSizeUnit(nsIPrintSettings::kPaperSizeMillimeters);
306
  target->SetPaperSizeUnit(nsIPrintSettings::kPaperSizeMillimeters);
301
  target->SetPaperSize (nsIPrintSettings::kPaperSizeDefined);
302
307
303
  GtkPaperSize *paperSize = gtk_page_setup_get_paper_size (settings->setup);
308
  GtkPaperSize *paperSize = gtk_page_setup_get_paper_size (settings->setup);
304
  if (!paperSize) {
309
  if (!paperSize) {
Lines 437-451 yelp_register_printing () Link Here
437
  NS_ENSURE_SUCCESS (rv, );
442
  NS_ENSURE_SUCCESS (rv, );
438
443
439
  nsCOMPtr<nsIGenericFactory> componentFactory;
444
  nsCOMPtr<nsIGenericFactory> componentFactory;
440
  rv = NS_NewGenericFactory(getter_AddRefs(componentFactory),
445
  componentFactory = do_CreateInstance ("@mozilla.org/generic-factory;1", &rv);
441
			    &(sAppComps[0]));
446
442
    
443
  if (NS_FAILED(rv) || !componentFactory)
447
  if (NS_FAILED(rv) || !componentFactory)
444
    {
448
    {
445
      g_warning ("Failed to make a factory for %s\n", sAppComps[0].mDescription);
449
      g_warning ("Failed to make a factory for %s\n", sAppComps[0].mDescription);
446
      return;
450
      return;
447
    }
451
    }
448
   
452
   
453
  componentFactory->SetComponentInfo(&(sAppComps[0]));
454
    
449
  rv = cr->RegisterFactory(sAppComps[0].mCID,
455
  rv = cr->RegisterFactory(sAppComps[0].mCID,
450
			   sAppComps[0].mDescription,
456
			   sAppComps[0].mDescription,
451
			   sAppComps[0].mContractID,
457
			   sAppComps[0].mContractID,
(-)src/yelp-main.c (-1 / +2 lines)
Lines 389-395 main (int argc, char **argv) Link Here
389
	}
389
	}
390
390
391
	if (!yelp_html_initialize ()) {
391
	if (!yelp_html_initialize ()) {
392
		g_error ("Could not initialize gecko!");
392
		g_printerr ("Could not initialize gecko!\n");
393
		exit (1);
393
	}
394
	}
394
395
395
	if (files != NULL && files[0] != NULL) {
396
	if (files != NULL && files[0] != NULL) {
(-)src/yelp-gecko-utils.cpp (-2 / +33 lines)
Lines 27-32 Link Here
27
27
28
#include <nsStringAPI.h>
28
#include <nsStringAPI.h>
29
29
30
//#ifdef HAVE_GECKO_1_9
31
//#include <gtkmozembed_glue.cpp>
32
//#endif
33
30
#include <gtkmozembed.h>
34
#include <gtkmozembed.h>
31
#include <gtkmozembed_internal.h>
35
#include <gtkmozembed_internal.h>
32
#include <nsCOMPtr.h>
36
#include <nsCOMPtr.h>
Lines 205-222 yelp_gecko_init (void) Link Here
205
#ifdef HAVE_GECKO_1_9
209
#ifdef HAVE_GECKO_1_9
206
	NS_LogInit ();
210
	NS_LogInit ();
207
#endif
211
#endif
208
	
212
213
	nsresult rv;
214
#ifdef XPCOM_GLUE
215
    static const GREVersionRange greVersion = {
216
    "1.9a", PR_TRUE,
217
    "2", PR_TRUE
218
    };
219
    char xpcomLocation[PATH_MAX];
220
    rv = GRE_GetGREPathWithProperties(&greVersion, 1, nsnull, 0, xpcomLocation, sizeof (xpcomLocation));
221
    NS_ENSURE_SUCCESS (rv, FALSE);
222
223
    // Startup the XPCOM Glue that links us up with XPCOM.
224
    rv = XPCOMGlueStartup(xpcomLocation);
225
    NS_ENSURE_SUCCESS (rv, FALSE);
226
227
    rv = GTKEmbedGlueStartup();
228
    NS_ENSURE_SUCCESS (rv, FALSE);
229
230
    rv = GTKEmbedGlueStartupInternal();
231
    NS_ENSURE_SUCCESS (rv, FALSE);
232
233
    char *lastSlash = strrchr(xpcomLocation, '/');
234
    if (lastSlash)
235
      *lastSlash = '\0';
236
237
    gtk_moz_embed_set_path(xpcomLocation);
238
239
#else
209
#ifdef HAVE_GECKO_1_9
240
#ifdef HAVE_GECKO_1_9
210
	gtk_moz_embed_set_path (MOZILLA_HOME);
241
	gtk_moz_embed_set_path (MOZILLA_HOME);
211
#else
242
#else
212
	gtk_moz_embed_set_comp_path (MOZILLA_HOME);
243
	gtk_moz_embed_set_comp_path (MOZILLA_HOME);
213
#endif
244
#endif
245
#endif // XPCOM_GLUE
214
246
215
	gtk_moz_embed_push_startup ();
247
	gtk_moz_embed_push_startup ();
216
248
217
	yelp_register_printing ();
249
	yelp_register_printing ();
218
250
219
	nsresult rv;
220
	nsCOMPtr<nsIPrefService> prefService (do_GetService (NS_PREFSERVICE_CONTRACTID, &rv));
251
	nsCOMPtr<nsIPrefService> prefService (do_GetService (NS_PREFSERVICE_CONTRACTID, &rv));
221
	NS_ENSURE_SUCCESS (rv, FALSE);
252
	NS_ENSURE_SUCCESS (rv, FALSE);
222
253
(-)m4/gecko.m4 (-37 / +135 lines)
Lines 13-19 Link Here
13
#
13
#
14
# You should have received a copy of the GNU General Public License along
14
# You should have received a copy of the GNU General Public License along
15
# with this program; if not, write to the Free Software Foundation, Inc.,
15
# with this program; if not, write to the Free Software Foundation, Inc.,
16
# 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
16
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
17
17
18
# GECKO_INIT(VARIABLE,[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])
18
# GECKO_INIT(VARIABLE,[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])
19
#
19
#
Lines 32-37 Link Here
32
# VARIABLE: Which gecko was found (e.g. "xulrunnner", "seamonkey", ...)
32
# VARIABLE: Which gecko was found (e.g. "xulrunnner", "seamonkey", ...)
33
# VARIABLE_FLAVOUR: The flavour of the gecko that was found
33
# VARIABLE_FLAVOUR: The flavour of the gecko that was found
34
# VARIABLE_HOME:
34
# VARIABLE_HOME:
35
# VARIABLE_NSPR: set if nspr is provided by gecko flags
35
# VARIABLE_PREFIX:
36
# VARIABLE_PREFIX:
36
# VARIABLE_INCLUDE_ROOT:
37
# VARIABLE_INCLUDE_ROOT:
37
# VARIABLE_VERSION: The version of the gecko that was found
38
# VARIABLE_VERSION: The version of the gecko that was found
Lines 51-57 AC_PROG_AWK Link Here
51
AC_MSG_CHECKING([which gecko to use])
52
AC_MSG_CHECKING([which gecko to use])
52
53
53
AC_ARG_WITH([gecko],
54
AC_ARG_WITH([gecko],
54
	AS_HELP_STRING([--with-gecko@<:@=mozilla|firefox|seamonkey|xulrunner@:>@],
55
	AS_HELP_STRING([--with-gecko@<:@=mozilla|firefox|seamonkey|xulrunner|libxul-embedding|libxul@:>@],
55
		       [Which gecko engine to use (autodetected by default)]))
56
		       [Which gecko engine to use (autodetected by default)]))
56
57
57
# Backward compat
58
# Backward compat
Lines 60-71 AC_ARG_WITH([mozilla],[],[with_gecko=$wi Link Here
60
gecko_cv_gecko=$with_gecko
61
gecko_cv_gecko=$with_gecko
61
62
62
# Autodetect gecko
63
# Autodetect gecko
63
_geckos="xulrunner firefox mozilla-firefox seamonkey mozilla"
64
_geckos="xulrunner firefox mozilla-firefox seamonkey mozilla libxul-embedding libxul"
64
if test -z "$gecko_cv_gecko"; then
65
if test -z "$gecko_cv_gecko"; then
65
	for lizard in $_geckos; do
66
	for lizard in $_geckos; do
66
		if $PKG_CONFIG --exists $lizard-xpcom; then
67
		if $PKG_CONFIG --exists $lizard-xpcom; then
67
			gecko_cv_gecko=$lizard
68
			gecko_cv_gecko=$lizard
68
			break;
69
			break;
70
		elif $PKG_CONFIG --exists $lizard-unstable; then
71
			gecko_cv_gecko=$lizard
72
			break;
69
		fi
73
		fi
70
	done
74
	done
71
fi
75
fi
Lines 82-87 else Link Here
82
	gecko_cv_have_gecko=yes
86
	gecko_cv_have_gecko=yes
83
fi
87
fi
84
88
89
AC_MSG_CHECKING([manual gecko home set])
90
91
AC_ARG_WITH([gecko-home],
92
	AS_HELP_STRING([--with-gecko-home@<:@=[path]@:>@],
93
		       [Manually set MOZILLA_FIVE_HOME]))
94
95
gecko_cv_gecko_home=$with_gecko_home
96
85
# ****************
97
# ****************
86
# Define variables
98
# Define variables
87
# ****************
99
# ****************
Lines 93-119 mozilla) gecko_cv_gecko_flavour=mozilla Link Here
93
seamonkey) gecko_cv_gecko_flavour=mozilla ;;
105
seamonkey) gecko_cv_gecko_flavour=mozilla ;;
94
*firefox) gecko_cv_gecko_flavour=toolkit ;;
106
*firefox) gecko_cv_gecko_flavour=toolkit ;;
95
xulrunner) gecko_cv_gecko_flavour=toolkit ;;
107
xulrunner) gecko_cv_gecko_flavour=toolkit ;;
108
libxul*) gecko_cv_gecko_flavour=toolkit ;;
96
esac
109
esac
97
110
98
_GECKO_INCLUDE_ROOT="`$PKG_CONFIG --variable=includedir ${gecko_cv_gecko}-xpcom`"
111
if $PKG_CONFIG --exists  ${gecko_cv_gecko}-xpcom; then
99
_GECKO_LIBDIR="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
112
	_GECKO_INCLUDE_ROOT="`$PKG_CONFIG --variable=includedir ${gecko_cv_gecko}-xpcom`"
100
_GECKO_HOME="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
113
	_GECKO_CFLAGS="-I$_GECKO_INCLUDE_ROOT"
101
_GECKO_PREFIX="`$PKG_CONFIG --variable=prefix ${gecko_cv_gecko}-xpcom`"
114
	_GECKO_LIBDIR="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
102
115
	_GECKO_HOME="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
116
	_GECKO_PREFIX="`$PKG_CONFIG --variable=prefix ${gecko_cv_gecko}-xpcom`"
117
	_GECKO_NSPR=no # XXX asac: this is currently a blind guess and should be a AC test
118
else
119
	_GECKO_INCLUDE_ROOT="`$PKG_CONFIG --variable=includedir ${gecko_cv_gecko}`/unstable"
120
	_GECKO_CFLAGS="`$PKG_CONFIG --cflags ${gecko_cv_gecko}` `$PKG_CONFIG --cflags ${gecko_cv_gecko}-unstable`"
121
	_GECKO_LIBDIR="`$PKG_CONFIG --variable=sdkdir ${gecko_cv_gecko}`/bin"
122
	_GECKO_HOME="`$PKG_CONFIG --variable=sdkdir ${gecko_cv_gecko}`"
123
	_GECKO_PREFIX="`$PKG_CONFIG --variable=prefix ${gecko_cv_gecko}`"
124
	_GECKO_NSPR=no # XXX asac: this is currently a blind guess and should be a AC test
125
fi
103
fi # if gecko_cv_have_gecko
126
fi # if gecko_cv_have_gecko
104
127
105
if test "$gecko_cv_gecko_flavour" = "toolkit"; then
128
if test "$gecko_cv_gecko_flavour" = "toolkit"; then
106
	AC_DEFINE([HAVE_MOZILLA_TOOLKIT],[1],[Define if mozilla is of the toolkit flavour])
129
	AC_DEFINE([HAVE_MOZILLA_TOOLKIT],[1],[Define if mozilla is of the toolkit flavour])
107
fi
130
fi
108
131
109
AM_CONDITIONAL([HAVE_MOZILLA_TOOLKIT],[test "$gecko_cv_gecko_flavour" = "toolkit"])
110
111
$1[]=$gecko_cv_gecko
132
$1[]=$gecko_cv_gecko
112
$1[]_FLAVOUR=$gecko_cv_gecko_flavour
133
$1[]_FLAVOUR=$gecko_cv_gecko_flavour
113
$1[]_INCLUDE_ROOT=$_GECKO_INCLUDE_ROOT
134
$1[]_INCLUDE_ROOT=$_GECKO_INCLUDE_ROOT
135
$1[]_CFLAGS=$_GECKO_CFLAGS
114
$1[]_LIBDIR=$_GECKO_LIBDIR
136
$1[]_LIBDIR=$_GECKO_LIBDIR
115
$1[]_HOME=$_GECKO_HOME
137
$1[]_HOME=$_GECKO_HOME
116
$1[]_PREFIX=$_GECKO_PREFIX
138
$1[]_PREFIX=$_GECKO_PREFIX
139
$1[]_NSPR=$_GECKO_NSPR
117
140
118
# **************************************************************
141
# **************************************************************
119
# This is really gcc-only
142
# This is really gcc-only
Lines 184-190 if test "$gecko_cv_have_gecko" = "yes"; Link Here
184
AC_LANG_PUSH([C++])
207
AC_LANG_PUSH([C++])
185
208
186
_SAVE_CPPFLAGS="$CPPFLAGS"
209
_SAVE_CPPFLAGS="$CPPFLAGS"
187
CPPFLAGS="$CPPFLAGS $_GECKO_EXTRA_CPPFLAGS -I$_GECKO_INCLUDE_ROOT"
210
CPPFLAGS="$CPPFLAGS $_GECKO_EXTRA_CPPFLAGS $_GECKO_CFLAGS"
188
211
189
AC_MSG_CHECKING([[whether we have a gtk 2 gecko build]])
212
AC_MSG_CHECKING([[whether we have a gtk 2 gecko build]])
190
AC_RUN_IFELSE(
213
AC_RUN_IFELSE(
Lines 217-222 AC_COMPILE_IFELSE( Link Here
217
	[gecko_cv_have_debug=no])
240
	[gecko_cv_have_debug=no])
218
AC_MSG_RESULT([$gecko_cv_have_debug])
241
AC_MSG_RESULT([$gecko_cv_have_debug])
219
242
243
AC_MSG_CHECKING([[whether we have a xpcom glue]])
244
AC_COMPILE_IFELSE(
245
	[AC_LANG_SOURCE(
246
		[[
247
		  #ifndef XPCOM_GLUE
248
		  #error "no xpcom glue found"
249
		  #endif]]
250
	)],
251
	[gecko_cv_have_xpcom_glue=yes],
252
	[gecko_cv_have_xpcom_glue=no])
253
AC_MSG_RESULT([$gecko_cv_have_xpcom_glue])
254
220
CPPFLAGS="$_SAVE_CPPFLAGS"
255
CPPFLAGS="$_SAVE_CPPFLAGS"
221
256
222
AC_LANG_POP([C++])
257
AC_LANG_POP([C++])
Lines 228-236 if test "$gecko_cv_have_debug" = "yes"; Link Here
228
	AC_DEFINE([HAVE_GECKO_DEBUG],[1],[Define if gecko is a debug build])
263
	AC_DEFINE([HAVE_GECKO_DEBUG],[1],[Define if gecko is a debug build])
229
fi
264
fi
230
265
231
fi # if gecko_cv_have_gecko
266
if test "$gecko_cv_have_xpcom_glue" = "yes"; then
267
	AC_DEFINE([HAVE_GECKO_XPCOM_GLUE],[1],[Define if xpcom glue is used])
268
fi
232
269
233
AM_CONDITIONAL([HAVE_GECKO_DEBUG],[test "$gecko_cv_have_debug" = "yes"])
270
fi # if gecko_cv_have_gecko
234
271
235
# ***********************
272
# ***********************
236
# Check for gecko version
273
# Check for gecko version
Lines 241-247 if test "$gecko_cv_have_gecko" = "yes"; Link Here
241
AC_LANG_PUSH([C++])
278
AC_LANG_PUSH([C++])
242
279
243
_SAVE_CPPFLAGS="$CPPFLAGS"
280
_SAVE_CPPFLAGS="$CPPFLAGS"
244
CPPFLAGS="$CPPFLAGS -I$_GECKO_INCLUDE_ROOT"
281
CPPFLAGS="$CPPFLAGS $_GECKO_CFLAGS"
245
282
246
AC_CACHE_CHECK([for gecko version],
283
AC_CACHE_CHECK([for gecko version],
247
	[gecko_cv_gecko_version],
284
	[gecko_cv_gecko_version],
Lines 311-321 fi Link Here
311
348
312
fi # if gecko_cv_have_gecko
349
fi # if gecko_cv_have_gecko
313
350
314
AM_CONDITIONAL([HAVE_GECKO_1_7],[test "$gecko_cv_gecko_version_int" -ge "1007000"])
315
AM_CONDITIONAL([HAVE_GECKO_1_8],[test "$gecko_cv_gecko_version_int" -ge "1008000"])
316
AM_CONDITIONAL([HAVE_GECKO_1_8_1],[test "$gecko_cv_gecko_version_int" -ge "1008001"])
317
AM_CONDITIONAL([HAVE_GECKO_1_9],[test "$gecko_cv_gecko_version_int" -ge "1009000"])
318
319
$1[]_VERSION=$gecko_cv_gecko_version
351
$1[]_VERSION=$gecko_cv_gecko_version
320
$1[]_VERSION_INT=$gecko_cv_gecko_version_int
352
$1[]_VERSION_INT=$gecko_cv_gecko_version_int
321
353
Lines 328-335 gecko_cv_glue_libs= Link Here
328
gecko_cv_extra_pkg_dependencies=
360
gecko_cv_extra_pkg_dependencies=
329
361
330
if test "$gecko_cv_gecko_version_int" -ge "1009000"; then
362
if test "$gecko_cv_gecko_version_int" -ge "1009000"; then
331
	gecko_cv_extra_libs="-L$_GECKO_LIBDIR -lxul"
363
	if ! test "$gecko_cv_have_xpcom_glue" = "yes"; then
332
	gecko_cv_glue_libs="-L$_GECKO_LIBDIR -lxpcomglue_s"
364
		gecko_cv_extra_libs="-L$_GECKO_LIBDIR -lxul"
365
	else
366
		gecko_cv_glue_libs="-L$_GECKO_LIBDIR -lxpcomglue"
367
	fi
333
else
368
else
334
	gecko_cv_extra_pkg_dependencies="${gecko_cv_gecko}-gtkmozembed"
369
	gecko_cv_extra_pkg_dependencies="${gecko_cv_gecko}-gtkmozembed"
335
fi
370
fi
Lines 340-345 $1[]_GLUE_LIBS="$gecko_cv_glue_libs" Link Here
340
375
341
])
376
])
342
377
378
# GECKO_DEFINES
379
#
380
# Defines the AM_CONDITIONALS for GECKO_INIT. This is a separate call
381
# so that you may call GECKO_INIT conditionally; but note that you must
382
# call GECKO_DEFINES _unconditionally_ !
383
384
AC_DEFUN([GECKO_DEFINES],
385
[
386
# Ensure we have an integer variable to compare with
387
if test -z "$gecko_cv_gecko_version_int"; then
388
	gecko_cv_gecko_version_int=0
389
fi
390
AM_CONDITIONAL([HAVE_MOZILLA_TOOLKIT],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_flavour" = "toolkit"])
391
AM_CONDITIONAL([HAVE_GECKO_DEBUG],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_have_debug" = "yes"])
392
AM_CONDITIONAL([HAVE_GECKO_1_7],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1007000"])
393
AM_CONDITIONAL([HAVE_GECKO_1_8],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1008000"])
394
AM_CONDITIONAL([HAVE_GECKO_1_8_1],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1008001"])
395
AM_CONDITIONAL([HAVE_GECKO_1_9],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1009000"])
396
AM_CONDITIONAL([HAVE_GECKO_HOME],[test "x$_GECKO_HOME" != "x"])
397
AM_CONDITIONAL([HAVE_GECKO_DEBUG],[test "$gecko_cv_have_debug" = "yes"])
398
AM_CONDITIONAL([HAVE_GECKO_XPCOM_GLUE],[test "$gecko_cv_have_xpcom_glue" = "yes"])
399
])
400
343
# ***************************************************************************
401
# ***************************************************************************
344
# ***************************************************************************
402
# ***************************************************************************
345
# ***************************************************************************
403
# ***************************************************************************
Lines 359-368 _SAVE_CPPFLAGS="$CPPFLAGS" Link Here
359
_SAVE_CXXFLAGS="$CXXFLAGS"
417
_SAVE_CXXFLAGS="$CXXFLAGS"
360
_SAVE_LDFLAGS="$LDFLAGS"
418
_SAVE_LDFLAGS="$LDFLAGS"
361
_SAVE_LIBS="$LIBS"
419
_SAVE_LIBS="$LIBS"
362
CPPFLAGS="$CPPFLAGS $_GECKO_EXTRA_CPPFLAGS -I$_GECKO_INCLUDE_ROOT $($PKG_CONFIG --cflags-only-I ${gecko_cv_gecko}-xpcom)"
420
if test "${gecko_cv_gecko}" = "libxul-embedding" -o "${gecko_cv_gecko}" = "libxul"; then
363
CXXFLAGS="$CXXFLAGS $_GECKO_EXTRA_CXXFLAGS $($PKG_CONFIG --cflags-only-other ${gecko_cv_gecko}-xpcom)"
421
	CPPFLAGS="$CPPFLAGS $_GECKO_EXTRA_CPPFLAGS $_GECKO_CFLAGS $($PKG_CONFIG --cflags-only-I ${gecko_cv_gecko}-unstable)"
364
LDFLAGS="$LDFLAGS $_GECKO_EXTRA_LDFLAGS -Wl,--rpath=$_GECKO_HOME"
422
	CXXFLAGS="$CXXFLAGS $_GECKO_EXTRA_CXXFLAGS $_GECKO_CFLAGS $($PKG_CONFIG --cflags-only-other ${gecko_cv_gecko}-unstable)"
365
LIBS="$LIBS $($PKG_CONFIG --libs ${gecko_cv_gecko}-xpcom)"
423
	LIBS="$LIBS $($PKG_CONFIG --libs ${gecko_cv_gecko}) -ldl"
424
else
425
	CPPFLAGS="$CPPFLAGS $_GECKO_EXTRA_CPPFLAGS $_GECKO_CFLAGS $($PKG_CONFIG --cflags-only-I ${gecko_cv_gecko}-xpcom)"
426
	CXXFLAGS="$CXXFLAGS $_GECKO_EXTRA_CXXFLAGS $_GECKO_CFLAGS $($PKG_CONFIG --cflags-only-other ${gecko_cv_gecko}-xpcom)"
427
	LIBS="$LIBS $($PKG_CONFIG --libs ${gecko_cv_gecko}-xpcom)"
428
fi
429
if test -n "$_GECKO_HOME"; then
430
	LDFLAGS="$LDFLAGS $_GECKO_EXTRA_LDFLAGS -Wl,--rpath=$_GECKO_HOME"
431
else
432
	LDFLAGS="$LDFLAGS $_GECKO_EXTRA_LDFLAGS"
433
fi
366
434
367
_GECKO_DISPATCH_INCLUDEDIRS="$2"
435
_GECKO_DISPATCH_INCLUDEDIRS="$2"
368
436
Lines 371-379 _GECKO_DISPATCH_INCLUDEDIRS="$2" Link Here
371
# Mind you, it's useful to be able to test against uninstalled mozilla builds...
439
# Mind you, it's useful to be able to test against uninstalled mozilla builds...
372
_GECKO_DISPATCH_INCLUDEDIRS="$_GECKO_DISPATCH_INCLUDEDIRS dom necko pref"
440
_GECKO_DISPATCH_INCLUDEDIRS="$_GECKO_DISPATCH_INCLUDEDIRS dom necko pref"
373
441
374
# Now add them to CPPFLAGS
442
# Now add them to CPPFLAGS - asac: well ... not anymore since 1.9 -> test whether they exist before adding.
375
for i in $_GECKO_DISPATCH_INCLUDEDIRS; do
443
for i in $_GECKO_DISPATCH_INCLUDEDIRS; do
376
	CPPFLAGS="$CPPFLAGS -I$_GECKO_INCLUDE_ROOT/$i"
444
	if test -d "$_GECKO_INCLUDE_ROOT/$i"; then
445
		CPPFLAGS="$CPPFLAGS -I$_GECKO_INCLUDE_ROOT/$i"
446
	fi
377
done
447
done
378
448
379
m4_indir([$1],m4_shiftn(2,$@))
449
m4_indir([$1],m4_shiftn(2,$@))
Lines 426-436 AC_DEFUN([GECKO_XPCOM_PROGRAM], Link Here
426
#include <mozilla-config.h>
496
#include <mozilla-config.h>
427
#include <stdlib.h>
497
#include <stdlib.h>
428
#include <stdio.h>
498
#include <stdio.h>
499
500
#ifdef XPCOM_GLUE
501
#include <nsXPCOMGlue.h>
502
#else
429
#include <nsXPCOM.h>
503
#include <nsXPCOM.h>
504
#endif // XPCOM_GLUE
505
430
#include <nsCOMPtr.h>
506
#include <nsCOMPtr.h>
431
#include <nsILocalFile.h>
507
#include <nsILocalFile.h>
432
#include <nsIServiceManager.h>
508
#include <nsIServiceManager.h>
433
#ifdef HAVE_GECKO_1_8
509
#if defined(HAVE_GECKO_1_8) || defined(HAVE_GECKO_1_9)
434
#include <nsStringAPI.h>
510
#include <nsStringAPI.h>
435
#else
511
#else
436
#include <nsString.h>
512
#include <nsString.h>
Lines 438-453 AC_DEFUN([GECKO_XPCOM_PROGRAM], Link Here
438
]]
514
]]
439
[$1],
515
[$1],
440
[[
516
[[
517
518
nsresult rv;
519
#ifdef XPCOM_GLUE
520
    static const GREVersionRange greVersion = {
521
    "1.8", PR_TRUE,
522
    "1.9.*", PR_TRUE
523
    };
524
    char xpcomLocation[4096];
525
    rv = GRE_GetGREPathWithProperties(&greVersion, 1, nsnull, 0, xpcomLocation, 4096);
526
    if (NS_FAILED(rv)) {
527
        exit(123);
528
    }
529
530
    // Startup the XPCOM Glue that links us up with XPCOM.
531
    XPCOMGlueStartup(xpcomLocation);
532
    if (NS_FAILED(rv)) {
533
        exit(124);
534
    }
535
#endif // XPCOM_GLUE
536
441
// redirect unwanted mozilla debug output to the bit bucket
537
// redirect unwanted mozilla debug output to the bit bucket
442
freopen ("/dev/null", "w", stdout);
538
freopen ("/dev/null", "w", stdout);
443
539
444
nsresult rv;
540
nsCOMPtr<nsILocalFile> directory = nsnull;
445
nsCOMPtr<nsILocalFile> directory;
541
#ifndef XPCOM_GLUE
446
rv = NS_NewNativeLocalFile (NS_LITERAL_CSTRING("$_GECKO_HOME"), PR_FALSE,
542
rv = NS_NewNativeLocalFile (NS_LITERAL_CSTRING("$_GECKO_HOME"), PR_FALSE,
447
			    getter_AddRefs (directory));
543
			    getter_AddRefs (directory));
448
if (NS_FAILED (rv) || !directory) {
544
if (NS_FAILED (rv) || !directory) {
449
	exit (126);
545
	exit (126);
450
}
546
}
547
#endif
451
548
452
rv = NS_InitXPCOM2 (nsnull, directory, nsnull);
549
rv = NS_InitXPCOM2 (nsnull, directory, nsnull);
453
if (NS_FAILED (rv)) {
550
if (NS_FAILED (rv)) {
Lines 595-615 fi Link Here
595
AC_DEFUN([GECKO_XPIDL],
692
AC_DEFUN([GECKO_XPIDL],
596
[AC_REQUIRE([GECKO_INIT])dnl
693
[AC_REQUIRE([GECKO_INIT])dnl
597
694
598
_GECKO_LIBDIR="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
695
if test ${gecko_cv_gecko} = "libxul-embedding" -o ${gecko_cv_gecko} = "libxul"; then
696
	_GECKO_LIBDIR="`$PKG_CONFIG pkg-config --variable=sdkdir ${gecko_cv_gecko}`/bin"
697
else
698
	_GECKO_LIBDIR="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
699
fi
599
700
600
AC_PATH_PROG([XPIDL],[xpidl],[no],[$_GECKO_LIBDIR:$PATH])
701
AC_PATH_PROG([XPIDL],[xpidl],[no],[$_GECKO_LIBDIR:$PATH])
601
702
703
if test ${gecko_cv_gecko} = "libxul-embedding" -o ${gecko_cv_gecko} = "libxul"; then
704
XPIDL_IDLDIR="`$PKG_CONFIG --variable=idldir ${gecko_cv_gecko}`"
705
else
602
XPIDL_IDLDIR="`$PKG_CONFIG --variable=idldir ${gecko_cv_gecko}-xpcom`"
706
XPIDL_IDLDIR="`$PKG_CONFIG --variable=idldir ${gecko_cv_gecko}-xpcom`"
603
604
# Older geckos don't have this variable, see
605
# https://bugzilla.mozilla.org/show_bug.cgi?id=240473
606
607
if test -z "$XPIDL_IDLDIR" -o ! -f "$XPIDL_IDLDIR/nsISupports.idl"; then
707
if test -z "$XPIDL_IDLDIR" -o ! -f "$XPIDL_IDLDIR/nsISupports.idl"; then
608
	XPIDL_IDLDIR="`echo $_GECKO_LIBDIR | sed -e s!lib!share/idl!`"
708
	XPIDL_IDLDIR="`echo $_GECKO_LIBDIR | sed -e s!lib!share/idl!`"
609
fi
709
fi
610
611
# Some distributions (Gentoo) have it in unusual places
710
# Some distributions (Gentoo) have it in unusual places
612
613
if test -z "$XPIDL_IDLDIR" -o ! -f "$XPIDL_IDLDIR/nsISupports.idl"; then
711
if test -z "$XPIDL_IDLDIR" -o ! -f "$XPIDL_IDLDIR/nsISupports.idl"; then
614
	XPIDL_IDLDIR="$_GECKO_INCLUDE_ROOT/idl"
712
	XPIDL_IDLDIR="$_GECKO_INCLUDE_ROOT/idl"
615
fi
713
fi
(-)src/Makefile.am (-2 / +8 lines)
Lines 65-74 mozilla_include_subdirs = \ Link Here
65
yelp_CPPFLAGS =									\
65
yelp_CPPFLAGS =									\
66
	-I$(top_srcdir)								\
66
	-I$(top_srcdir)								\
67
	-I$(top_builddir)/src							\
67
	-I$(top_builddir)/src							\
68
	$(addprefix -I$(MOZILLA_INCLUDE_ROOT)/,$(mozilla_include_subdirs))      \
69
	$(YELP_DEFINES)								\
68
	$(YELP_DEFINES)								\
70
	$(AM_CPPFLAGS)
69
	$(AM_CPPFLAGS)
71
70
71
yelp_CPPFLAGS += $(MOZILLA_COMPONENT_CFLAGS)
72
yelp_CPPFLAGS += $(addprefix -I$(MOZILLA_INCLUDE_ROOT)/,$(mozilla_include_subdirs))
73
72
yelp_CFLAGS =				\
74
yelp_CFLAGS =				\
73
	$(YELP_CFLAGS)			\
75
	$(YELP_CFLAGS)			\
74
	$(YELP_SEARCH_CFLAGS)		\
76
	$(YELP_SEARCH_CFLAGS)		\
Lines 92-98 yelp_LDADD = \ Link Here
92
	$(MOZILLA_EXTRA_LIBS)		\
94
	$(MOZILLA_EXTRA_LIBS)		\
93
	$(MOZILLA_GLUE_LIBS)
95
	$(MOZILLA_GLUE_LIBS)
94
96
95
yelp_LDFLAGS = -R$(MOZILLA_HOME) $(AM_LDFLAGS)
97
yelp_LDFLAGS = $(AM_LDFLAGS)
98
99
if !HAVE_GECKO_XPCOM_GLUE
100
yelp_LDFLAGS += -Wl,-rpath,$(MOZILLA_HOME)
101
endif
96
102
97
#check_PROGRAMS =		\
103
#check_PROGRAMS =		\
98
#	test-document		\
104
#	test-document		\

Return to bug 204632