Added:
trunk/gom/include/Makefile.inc
trunk/gom/xulapp/ (props changed)
- copied from r78, /trunk/gom/src/xulapp/
trunk/gom/xulapp/Makefile.in
trunk/gom/xulapp/app/ (props changed)
trunk/gom/xulapp/app/Makefile.in
trunk/gom/xulapp/app/application.ini.in
- copied unchanged from r78, /trunk/gom/src/xulapp/application.ini.in
trunk/gom/xulapp/app/channel-prefs.js
trunk/gom/xulapp/app/default-prefs.js
trunk/gom/xulapp/build.mk
trunk/gom/xulapp/chrome/Makefile.in
trunk/gom/xulapp/chrome/branding/
trunk/gom/xulapp/chrome/branding/Makefile.in
trunk/gom/xulapp/chrome/branding/brand.properties
trunk/gom/xulapp/chrome/branding/jar.mn
trunk/gom/xulapp/chrome/content/Makefile.in
trunk/gom/xulapp/chrome/content/gom.js
trunk/gom/xulapp/chrome/content/gom.xul
trunk/gom/xulapp/chrome/content/jar.mn
trunk/gom/xulapp/chrome/locales/
trunk/gom/xulapp/chrome/locales/Makefile.in
trunk/gom/xulapp/chrome/locales/en-US/
trunk/gom/xulapp/chrome/locales/en-US/updater.ini
trunk/gom/xulapp/chrome/locales/jar.mn
trunk/gom/xulapp/components/
trunk/gom/xulapp/components/Makefile.in
trunk/gom/xulapp/components/gom/
trunk/gom/xulapp/components/gom/Makefile.in
trunk/gom/xulapp/components/gom/public/
trunk/gom/xulapp/components/gom/public/Makefile.in
trunk/gom/xulapp/components/gom/public/xgIGObjectWrapper.idl
- copied, changed from r78, /trunk/gom/idl/xgPIWrapped.idl
trunk/gom/xulapp/components/gom/src/
trunk/gom/xulapp/components/gom/src/Makefile.in
trunk/gom/xulapp/components/gom/src/xgGomElementFactory.cpp
- copied, changed from r78,
/trunk/gom/src/xpgom/xgGomElementFactory.cc
trunk/gom/xulapp/components/gom/src/xgGomElementFactory.h
- copied unchanged from r78,
/trunk/gom/include/xpgom/xgGomElementFactory.hh
trunk/gom/xulapp/components/gom/src/xgGomModule.cpp
- copied, changed from r78, /trunk/gom/src/xpgom/xgGomModule.cc
trunk/gom/xulapp/components/gom/src/xgGtkElement.cpp
- copied, changed from r78, /trunk/gom/src/xpgom/xgGtkElement.cc
trunk/gom/xulapp/components/gom/src/xgGtkElement.h
- copied, changed from r78, /trunk/gom/include/xpgom/xgGtkElement.hh
trunk/gom/xulapp/components/gom/src/xgGtkElementFactory.cpp
- copied, changed from r78,
/trunk/gom/src/xpgom/xgGtkElementFactory.cc
trunk/gom/xulapp/components/gom/src/xgGtkElementFactory.h
- copied unchanged from r78,
/trunk/gom/include/xpgom/xgGtkElementFactory.hh
trunk/gom/xulapp/components/gom/src/xgScriptElement.cpp
- copied, changed from r78, /trunk/gom/src/xpgom/xgScriptElement.cc
trunk/gom/xulapp/components/gom/src/xgScriptElement.h
- copied, changed from r78,
/trunk/gom/include/xpgom/xgScriptElement.hh
trunk/gom/xulapp/components/gom/src/xgString.h
- copied unchanged from r78, /trunk/gom/include/xpgom/xgString.hh
trunk/gom/xulapp/confvars.sh.in
trunk/gom/xulapp/gom.mozconfig.in
Removed:
trunk/gom/idl/xgPIWrapped.idl
trunk/gom/include/xpgom/xgGomElementFactory.hh
trunk/gom/include/xpgom/xgGtkElement.hh
trunk/gom/include/xpgom/xgGtkElementFactory.hh
trunk/gom/include/xpgom/xgScriptElement.hh
trunk/gom/include/xpgom/xgString.hh
trunk/gom/src/xpgom/xgGomElementFactory.cc
trunk/gom/src/xpgom/xgGomModule.cc
trunk/gom/src/xpgom/xgGtkElement.cc
trunk/gom/src/xpgom/xgGtkElementFactory.cc
trunk/gom/src/xpgom/xgScriptElement.cc
trunk/gom/src/xulapp/
trunk/gom/xulapp/application.ini.in
trunk/gom/xulapp/chrome/content/xpgom/
trunk/gom/xulapp/defaults/
Modified:
trunk/gom/ChangeLog
trunk/gom/Makefile.am
trunk/gom/configure.ac
trunk/gom/gomwidgets.in
trunk/gom/idl/Makefile.inc
trunk/gom/include/ (props changed)
trunk/gom/include/xpgom/Makefile.inc
trunk/gom/src/schema/Makefile.inc
trunk/gom/src/schema/gtkschema.c
trunk/gom/src/xpgom/Makefile.inc
trunk/gom/xulapp/chrome/chrome.manifest
Log:
2008-08-23 jacob <ja...@ilovegom.org>
* move src/xulapp to xulapp, and build it using the mozilla build
system
Modified: trunk/gom/ChangeLog
==============================================================================
--- trunk/gom/ChangeLog (original)
+++ trunk/gom/ChangeLog Sun Aug 24 00:42:42 2008
@@ -1,3 +1,8 @@
+2008-08-23 jacob <ja...@ilovegom.org>
+
+ * move src/xulapp to xulapp, and build it using the mozilla build
+ system
+
2008-08-21 jacob berkman <ja...@ilovegom.org>
* src/xulapp/chrome/content/xpgom/gom.xul: gom as a xulrunner
Modified: trunk/gom/Makefile.am
==============================================================================
--- trunk/gom/Makefile.am (original)
+++ trunk/gom/Makefile.am Sun Aug 24 00:42:42 2008
@@ -15,33 +15,6 @@
NULL :=
-# appsdir := $(datadir)/applications
-
-bin_PROGRAMS :=
-# sbin_PROGRAMS :=
-noinst_PROGRAMS :=
-check_PROGRAMS :=
-
-# sbin_SCRIPTS :=
-
-noinst_LIBRARIES :=
-noinst_LTLIBRARIES :=
-
-# dist_sbin_SCRIPTS :=
-dist_noinst_SCRIPTS :=
-# dist_pkglibexec_SCRIPTS :=
-
-lib_LIBRARIES :=
-lib_LTLIBRARIES :=
-
-# apps_DATA :=
-dist_noinst_DATA :=
-# nobase_dist_pkgdata_DATA :=
-noinst_DATA :=
-
-noinst_HEADERS :=
-idl_headers :=
-
BUILT_SOURCES :=
CLEANFILES :=
@@ -49,12 +22,8 @@
AM_CPPFLAGS :=
-dist_noinst_DATA += Makefile.am.subdir gomwidgets.in
-
-pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA := gom-0.pc
-
-# pkglibexecdir = $(libexecdir)/$(PACKAGE)
+dist_noinst_DATA := Makefile.am.subdir gomwidgets.in
+noinst_PROGRAMS :=
SUBDIRS = .
@@ -62,7 +31,17 @@
DIST_SUBDIRS := $(SUBDIRS) $(include_subdirs)
-gomwidgets.c: gomwidgets.in Makefile
+all: xulapp
+
+xulapp: include/gomwidgets.h
+ @if ! test -L $(MOZILLA)/gom ; then \
+ echo $(LN_S) $(top_srcdir)/xulapp $(MOZILLA)/gom; \
+ $(LN_S) $(PWD)/xulapp $(MOZILLA)/gom; \
+ fi
+ $(MAKE) CPPFLAGS="$(CPPFLAGS) -I$$PWD/$(top_srcdir)/include
-I$$PWD/$(top_builddir)/include" -C $(MOZILLA)
MOZCONFIG=$(MOZILLA)/gom/gom.mozconfig -f client.mk build
+
+include/gomwidgets.h: gomwidgets.in Makefile
+ -mkdir -p include
cp $< $@.tmp
chmod +w $@.tmp
awk '/GTK_TYPE_.*get_type/ { print "WIDGET ("$$2")" }' \
@@ -74,15 +53,17 @@
fi
include examples/Makefile.inc
-include idl/Makefile.inc
+#include idl/Makefile.inc
#include include/gom/Makefile.inc
#include include/gom/dom/Makefile.inc
-include include/xpgom/Makefile.inc
+#include include/Makefile.inc
+#include include/xpgom/Makefile.inc
#include src/gom/Makefile.inc
#include src/libgom/Makefile.inc
include src/schema/Makefile.inc
-include src/xpgom/Makefile.inc
-include tests/Makefile.inc
+#include src/xpgom/Makefile.inc
+#include src/xulapp/Makefile.inc
+#include tests/Makefile.inc
update-makefiles:
@for dir in $(include_subdirs) ; do \
@@ -90,8 +71,4 @@
cp "$(top_srcdir)/Makefile.am.subdir" "$(top_srcdir)/$$dir/Makefile.am" |
| exit 1 ; \
done
-.idl.hh:
- $(XPIDL) $(XPIDL_FLAGS) -m header -e $@ $<
-
-.idl.xpt:
- $(XPIDL) $(XPIDL_FLAGS) -m typelib -e $@ $<
+.PHONY: xulapp
Modified: trunk/gom/configure.ac
==============================================================================
--- trunk/gom/configure.ac (original)
+++ trunk/gom/configure.ac Sun Aug 24 00:42:42 2008
@@ -7,14 +7,34 @@
AC_CONFIG_SRCDIR([src/gom/gom.c])
AC_CONFIG_HEADER([config.h])
-AC_ARG_WITH([xulrunner-sdk],
- [AS_HELP_STRING([--with-xulrunner-sdk],
- [path to XulRunner SDK directory])],
- [xulrunnersdk=$withval])
-if test -z "$xulrunnersdk" ; then
- AC_MSG_ERROR([You must specify the path to a XulRunner SDK with the
--with-xulrunner-sdk option.])
+AC_ARG_WITH([libxul-sdk],
+ [AS_HELP_STRING([--with-libxul-sdk],
+ [path to XULlRunner SDK directory])],
+ [XULSDK=$withval])
+if test -z "$XULSDK" ; then
+ AC_MSG_ERROR([You must specify the path to a XULRunner SDK with the
--with-libxul-sdk option.])
fi
-AC_SUBST(DISTCHECK_CONFIGURE_FLAGS,["--with-xulrunner-sdk=$xulrunnersdk"])
+AC_SUBST(XULSDK)
+
+AC_ARG_WITH([mozilla],
+ [AS_HELP_STRING([--with-mozilla],
+ [path to Mozilla source tree])],
+ [MOZILLA=$withval])
+if test -z "$MOZILLA" ; then
+ AC_MSG_ERROR([You must specify the path to a Mozilla source tree with
the --mozilla option.])
+fi
+AC_SUBST(MOZILLA)
+
+AC_MSG_CHECKING([additional mozconfig])
+if test "$MOZCONFIG" ; then
+ AC_MSG_RESULT([$MOZCONFIG])
+else
+ AC_MSG_RESULT(none)
+fi
+AC_SUBST(MOZCONFIG)
+AM_CONDITIONAL([HAVE_MOZCONFIG],[test x$MOZCONFIG != x])
+
+AC_SUBST(DISTCHECK_CONFIGURE_FLAGS,["--with-libxul-sdk=$XULSDK
--with-mozilla=$MOZILLA MOZCONFIG=$MOZCONFIG"])
# Honor aclocal flags
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
@@ -22,12 +42,10 @@
# Checks for packages
GLIB_REQVER="2.6.0"
GTK_REQVER="2.6.0"
-CURL_REQVER="0"
-GOM_MODULES="gtk+-2.0 >= $GTK_REQVER gthread-2.0"
-PKG_CHECK_MODULES(GOM, [$GOM_MODULES])
-AC_SUBST(GOM_CFLAGS)
-AC_SUBST(GOM_LIBS)
+PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= $GTK_REQVER])
+AC_SUBST(GTK_CFLAGS)
+AC_SUBST(GTK_LIBS)
has_check="false"
TEST_MODULES="$GOM_MODULES check >= 0.9.5"
@@ -39,21 +57,14 @@
# Checks for programs.
AC_PROG_CC
AM_PROG_CC_C_O
-AC_PROG_CXX
+AC_PROG_LN_S
# AC_PROG_RANLIB
-AC_PROG_LIBTOOL
+# AC_PROG_LIBTOOL
# Make libtool use --silent when --silent is passed to make
changequote(,)dnl
LIBTOOL="${LIBTOOL} \$(shell echo \"\$(MFLAGS)\" | awk '/^[^ ]*s/ { print
\"--silent\" }')"
changequote([,])dnl
-AC_CHECK_PROG([XPIDL],[xpidl],[$xulrunnersdk/bin/xpidl],[],[$xulrunnersdk/bin])
-if test -z "$XPIDL" ; then
- AC_MSG_ERROR([$xuldunnersdk is missing xpidl])
-fi
-XPIDL_FLAGS="-I $xulrunnersdk/idl"
-AC_SUBST(XPIDL_FLAGS)
-
# Checks for libraries.
#
# Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
@@ -69,58 +80,12 @@
# Checks for header files.
CPPFLAGS_save=$CPPFLAGS
-xulrunner_cppflags="-DDEBUG -include xpcom-config.h
-I$xulrunnersdk/sdk/include"
-#xulrunner_cppflags="-DMOZILLA_INTERNAL_API $xulrunner_cppflags"
-for subdir in content xpcom dom xpconnect js widget layout ; do
- xulrunner_cppflags="$xulrunner_cppflags
-I$xulrunnersdk/include/$subdir"
-done
-CPPFLAGS="$CPPFLAGS_save $xulrunner_cppflags"
-CXXFLAGS="$CXXFLAGS -fshort-wchar -fno-rtti -fno-exceptions"
-AC_LANG_PUSH([C++])
-AC_CHECK_HEADERS([nsIXTFElement.h nsIAtom.h nsDOMError.h
nsIXPCScriptable.h nsEvent.h nsCompatibility.h],[],[
- AC_MSG_ERROR([$xulrunnersdk is missing XPCOM headers.])
-])
-AC_LANG_POP([C++])
-XPGOM_CFLAGS="$GOM_CFLAGS $xulrunner_cppflags"
-
-CPPFLAGS=$CPPFLAGS_save
-
-# Checks for typedefs, structures, and compiler characteristics.
-
-# Checks for library functions.
-LIBS_save=$LIBS
-
-#
http://developer.mozilla.org/en/docs/XPCOM_Glue#Sample_Compiler.2FLinker_Flags
-xulrunner_libs="-L$xulrunnersdk/sdk/lib"
-LIBS="$LIBS_save $xulrunner_libs"
-case $host_os in
- darwin*)
- xplibpath="-Wl,-executable_path,$xulrunnersdk/bin"
- ;;
- linux*)
- xplibpath="-Wl,-rpath-link,$xulrunnersdk/bin"
- ;;
- *)
- AC_MSG_ERROR([I don't know how to link components on $host_os])
- ;;
-esac
-# "Internal Linkage" :(
-#XPGOM_LIBS="$GOM_LIBS $xulrunner_libs -L$xulrunnersdk/lib
$xulrunnersdk/../docshell/build/libdocshell.dylib -lxpcom_core -lxpcom
-lnspr4"
-# "Dependent Glue"
-XPGOM_LIBS="$GOM_LIBS $xulrunner_libs -L$xulrunnersdk/bin $xplibpath
-lxpcomglue_s -lxpcom -lnspr4"
-# "Standalone Glue"
-#XPGOM_LIBS="$GOM_LIBS $xulrunner_libs -lxpcomglue"
-
-LIBS=$LIBS_save
-
rm -rf a.out.dSYM
-AC_SUBST(XPGOM_CFLAGS)
-AC_SUBST(XPGOM_LIBS)
-
AC_CONFIG_FILES([
-gom-0.pc
Makefile
-src/xulapp/application.ini
+xulapp/app/application.ini
+xulapp/confvars.sh
+xulapp/gom.mozconfig
])
AC_OUTPUT
Modified: trunk/gom/gomwidgets.in
==============================================================================
--- trunk/gom/gomwidgets.in (original)
+++ trunk/gom/gomwidgets.in Sun Aug 24 00:42:42 2008
@@ -1,18 +1,24 @@
-#undef GTK_TYPE_FILE_INFO
-#undef GTK_TYPE_FILE_SYSTEM_HANDLE
-#undef GTK_TYPE_FILE_SYSTEM
#undef GTK_TYPE_FILE_FOLDER
+#undef GTK_TYPE_FILE_INFO
#undef GTK_TYPE_FILE_PATH
+#undef GTK_TYPE_FILE_SYSTEM
+#undef GTK_TYPE_FILE_SYSTEM_HANDLE
+#undef GTK_TYPE_FILE_SYSTEM_MODEL
+#undef GTK_TYPE_QUERY
+#undef GTK_TYPE_SEARCH_ENGINE
#undef GTK_TYPE_TEXT
#undef GTK_TYPE_TEXT_LAYOUT
#undef GTK_TYPE_TREE
#undef GTK_TYPE_TREE_ITEM
-#define GTK_TYPE_FILE_INFO 0
-#define GTK_TYPE_FILE_SYSTEM_HANDLE 0
-#define GTK_TYPE_FILE_SYSTEM 0
#define GTK_TYPE_FILE_FOLDER 0
+#define GTK_TYPE_FILE_INFO 0
#define GTK_TYPE_FILE_PATH 0
+#define GTK_TYPE_FILE_SYSTEM 0
+#define GTK_TYPE_FILE_SYSTEM_HANDLE 0
+#define GTK_TYPE_FILE_SYSTEM_MODEL 0
+#define GTK_TYPE_QUERY 0
+#define GTK_TYPE_SEARCH_ENGINE 0
#define GTK_TYPE_TEXT 0
#define GTK_TYPE_TEXT_LAYOUT 0
#define GTK_TYPE_TREE 0
Modified: trunk/gom/idl/Makefile.inc
==============================================================================
--- trunk/gom/idl/Makefile.inc (original)
+++ trunk/gom/idl/Makefile.inc Sun Aug 24 00:42:42 2008
@@ -1,8 +1,5 @@
# -*- Makefile -*-
-idl_headers += idl/xgIParser.hh
-idl_headers += idl/xgIWindow.hh
-idl_headers += idl/xgPIWrapped.hh
+components_DATA += idl/xgPIWrapped.xpt
-dist_noinst_DATA += $(idl_headers)
-noinst_DATA += $(idl_headers:.idl=.xpt)
+dist_noinst_DATA += idl/xgPIWrapped.idl
Added: trunk/gom/include/Makefile.inc
==============================================================================
--- (empty file)
+++ trunk/gom/include/Makefile.inc Sun Aug 24 00:42:42 2008
@@ -0,0 +1,3 @@
+# -*- Makefile -*-
+
+dist_noinst_HEADERS += include/gommacros.h
Modified: trunk/gom/include/xpgom/Makefile.inc
==============================================================================
--- trunk/gom/include/xpgom/Makefile.inc (original)
+++ trunk/gom/include/xpgom/Makefile.inc Sun Aug 24 00:42:42 2008
@@ -1,4 +1,7 @@
# -*- Makefile -*-
-# xpgomincludedir := $(includedir)/gom-0/xpgom
-# xpgominclude_HEADERS :=
+dist_noinst_HEADERS += include/xpgom/xgGomElementFactory.hh
+dist_noinst_HEADERS += include/xpgom/xgGtkElement.hh
+dist_noinst_HEADERS += include/xpgom/xgGtkElementFactory.hh
+dist_noinst_HEADERS += include/xpgom/xgScriptElement.hh
+dist_noinst_HEADERS += include/xpgom/xgString.hh
Modified: trunk/gom/src/schema/Makefile.inc
==============================================================================
--- trunk/gom/src/schema/Makefile.inc (original)
+++ trunk/gom/src/schema/Makefile.inc Sun Aug 24 00:42:42 2008
@@ -2,11 +2,11 @@
noinst_PROGRAMS += gtkschema
-src/schema/gtkschema.c: gomwidgets.c
+src/schema/gtkschema.c: include/gomwidgets.h
gtkschema_SOURCES := src/schema/gtkschema.c
-gtkschema_CFLAGS = $(GOM_CFLAGS)
-gtkschema_LDADD := $(GOM_LIBS)
+gtkschema_CFLAGS = $(GTK_CFLAGS) -I$(top_builddir)/include
+gtkschema_LDADD := $(GTK_LIBS)
src/schema/gom-gtk.rnc: gtkschema
./gtkschema > $@
Modified: trunk/gom/src/schema/gtkschema.c
==============================================================================
--- trunk/gom/src/schema/gtkschema.c (original)
+++ trunk/gom/src/schema/gtkschema.c Sun Aug 24 00:42:42 2008
@@ -287,7 +287,7 @@
"widget = GtkWidget\n\n");
#define WIDGET(w) process_widget (w);
-#include "gomwidgets.c"
+#include "gomwidgets.h"
#undef WIDGET
if (child_attrs) {
Modified: trunk/gom/src/xpgom/Makefile.inc
==============================================================================
--- trunk/gom/src/xpgom/Makefile.inc (original)
+++ trunk/gom/src/xpgom/Makefile.inc Sun Aug 24 00:42:42 2008
@@ -1,6 +1,6 @@
# -*- Makefile -*-
-lib_LTLIBRARIES += libxpgom.la
+app_LIBRARIES += libxpgom.so
libxpgom_la_SOURCES :=
libxpgom_la_SOURCES += src/xpgom/xgGomElementFactory.cc
@@ -9,12 +9,12 @@
libxpgom_la_SOURCES += src/xpgom/xgGomModule.cc
libxpgom_la_SOURCES += src/xpgom/xgScriptElement.cc
-dist_noinst_DATA += src/xpgom/xgDocShellUnimplemented.cc
+$(libxpgom_la_SOURCES): idl/xgPIWrapped.hh
-$(libxpgom_la_SOURCES): $(idl_headers)
+src/xpgom/xgGomModule.cc: gomwidgets.c
+
+dist_noinst_DATA += src/xpgom/xpgom.symbols
libxpgom_la_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include
-I$(top_builddir)/idl $(XPGOM_CFLAGS)
libxpgom_la_LIBDADD :=
-libxpgom_la_LDFLAGS := -avoid-version -export-dynamic -no-undefined
$(XPGOM_LIBS)
-
-dist_noinst_DATA += src/xpgom/xgParser.js
+libxpgom_la_LDFLAGS := -avoid-version -export-symbols
$(top_srcdir)/src/xpgom/xpgom.symbols -module -no-undefined -no-install
$(XPGOM_LIBS)
Added: trunk/gom/xulapp/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,47 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+DIRS = components chrome app
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/app/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/app/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,131 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+PREF_JS_EXPORTS = \
+ $(srcdir)/default-prefs.js \
+ $(srcdir)/channel-prefs.js \
+ $(NULL)
+DIST_FILES = application.ini
+
+include $(topsrcdir)/config/rules.mk
+
+GRE_MILESTONE = $(shell $(PYTHON)
$(topsrcdir)/config/printconfigsetting.py $(LIBXUL_DIST)/bin/platform.ini
Build Milestone)
+GRE_BUILDID = $(shell $(PYTHON) $(topsrcdir)/config/printconfigsetting.py
$(LIBXUL_DIST)/bin/platform.ini Build BuildID)
+APP_BUILDID = $(shell date -u +%Y%m%d%H)
+
+DEFINES += -DGRE_MILESTONE=$(GRE_MILESTONE) -DGRE_BUILDID=$(GRE_BUILDID)
-DAPP_BUILDID=$(APP_BUILDID) -DAPP_NAME=$(MOZ_APP_DISPLAYNAME)
-DAPP_VERSION=$(MOZ_APP_VERSION)
+
+ifeq ($(USE_SHORT_LIBNAME), 1)
+APP_BINARY = $(MOZ_APP_NAME)$(BIN_SUFFIX)
+else
+APP_BINARY = $(MOZ_APP_NAME)-bin$(BIN_SUFFIX)
+endif
+
+# These are binaries in the sdk xulrunner instance that we don't want/need
+SDK_STRIP = \
+ mangle* \
+ nsinstall* \
+ regxpcom* \
+ shlibsign* \
+ ssltunnel* \
+ xpcshell* \
+ xpidl* \
+ xpt_dump* \
+ xpt_link* \
+ $(NULL)
+
+ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
+
+APP_NAME = $(MOZ_APP_DISPLAYNAME)
+APP_VERSION = $(MOZ_APP_VERSION)
+
+ifdef MOZ_DEBUG
+APP_NAME := $(APP_NAME)Debug
+endif
+
+AB_CD = $(MOZ_UI_LOCALE)
+
+AB := $(firstword $(subst -, ,$(AB_CD)))
+
+clean clobber repackage::
+ rm -rf $(DIST)/$(APP_NAME).app
+
+APPFILES = Resources
+XUL_FRAMEWORK = $(DIST)/$(APP_NAME).app/Contents/Frameworks/XUL.framework
+
+libs repackage:: application.ini
+ mkdir -p $(DIST)/$(APP_NAME).app/Contents/MacOS
+ rsync -a --exclude "*.in" --exclude ".DS_Store"
$(srcdir)/macbuild/Contents $(DIST)/$(APP_NAME).app --exclude English.lproj
+ mkdir -p $(DIST)/$(APP_NAME).app/Contents/Resources/$(AB).lproj
+ rsync -a --exclude "*.in" --exclude ".DS_Store"
$(srcdir)/macbuild/Contents/Resources/English.lproj/
$(DIST)/$(APP_NAME).app/Contents/Resources/$(AB).lproj
+ sed -e "s/%APP_VERSION%/$(APP_VERSION)/" -e "s/%APP_NAME%/$(APP_NAME)/"
-e "s/%APP_BINARY%/$(APP_BINARY)/"
$(srcdir)/macbuild/Contents/Info.plist.in >
$(DIST)/$(APP_NAME).app/Contents/Info.plist
+ sed -e "s/%APP_VERSION%/$(APP_VERSION)/" -e "s/%APP_NAME%/$(APP_NAME)/"
$(srcdir)/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in |
iconv -f UTF-8 -t UTF-16 >
$(DIST)/$(APP_NAME).app/Contents/Resources/$(AB).lproj/InfoPlist.strings
+ rsync -a $(DIST)/bin/ $(DIST)/$(APP_NAME).app/Contents/$(APPFILES)
+ cp $(LIBXUL_DIST)/bin/xulrunner$(BIN_SUFFIX)
$(DIST)/$(APP_NAME).app/Contents/MacOS/$(APP_BINARY)
+ mkdir -p $(XUL_FRAMEWORK)
+ rsync -a --copy-unsafe-links $(LIBXUL_DIST)/bin/ $(XUL_FRAMEWORK)
+ cd $(XUL_FRAMEWORK) && $(RM) -f $(SDK_STRIP)
+ cp $(srcdir)/../chrome/locales/$MOZ_UI_LOCALE)/updater.ini
$(XUL_FRAMEWORK)/updater.app/Contents/MacOS
+# remove version control dirs from packaged app
+ find $(DIST)/$(APP_NAME).app -type d -name "CVS" -prune -exec rm -rf {} \;
+ find $(DIST)/$(APP_NAME).app -type d -name ".svn" -prune -exec rm -rf {}
\;
+
+else
+
+libs::
+ cp $(LIBXUL_DIST)/bin/xulrunner-stub$(BIN_SUFFIX)
$(DIST)/bin/$(APP_BINARY)
+ $(NSINSTALL) -D $(DIST)/bin/xulrunner
+ (cd $(LIBXUL_DIST)/bin && tar $(TAR_CREATE_FLAGS) - .) | (cd
$(DIST)/bin/xulrunner && tar -xf -)
+ cd $(DIST)/bin/xulrunner && $(RM) -f $(SDK_STRIP)
+ cp $(srcdir)/../chrome/locales/$(MOZ_UI_LOCALE)/updater.ini
$(DIST)/bin/xulrunner
+# $(NSINSTALL) -D $(DIST)/bin/chrome/icons/default
+#ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
+# cp $(srcdir)/default.png $(DIST)/bin/chrome/icons/default/default.png
+#endif
+ifeq ($(OS_ARCH),WINNT)
+ cp $(srcdir)/default.ico $(DIST)/bin/chrome/icons/default/default.ico
+ $(DIST)/bin/redit $(DIST)/bin/$(APP_BINARY) $(srcdir)/default.ico
+endif
+
+endif #cocoa
Added: trunk/gom/xulapp/app/channel-prefs.js
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/app/channel-prefs.js Sun Aug 24 00:42:42 2008
@@ -0,0 +1,2 @@
+#filter substitution
+pref("app.update.channel", "@MOZ_UPDATE_CHANNEL@");
Added: trunk/gom/xulapp/app/default-prefs.js
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/app/default-prefs.js Sun Aug 24 00:42:42 2008
@@ -0,0 +1 @@
+pref ('toolkit.defaultChromeURI', 'chrome://gom/content/gom.xul');
Added: trunk/gom/xulapp/build.mk
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/build.mk Sun Aug 24 00:42:42 2008
@@ -0,0 +1,64 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+TIERS += app
+
+ifdef MOZ_EXTENSIONS
+tier_app_dirs += extensions
+endif
+
+tier_app_dirs += \
+ gom \
+ $(NULL)
+
+#ifdef MOZ_MOCHITEST
+#tier_testharness_dirs += \
+# testing/mochitest \
+# gom/tests \
+# $(NULL)
+#endif
+
+installer:
+ @echo "Gom doesn't have an installer yet."
+ @exit 1
+
+#package:
+# @$(MAKE) -C gom/installer
+
+install::
+ @echo "Gom can't be installed directly."
+ @exit 1
Added: trunk/gom/xulapp/chrome/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,51 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+DIRS = branding content locales
+
+#ifdef MOZ_MOCHITEST
+#DIRS += tests
+#endif
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/chrome/branding/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/branding/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,47 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+DEFINES += -DAB_CD=$(MOZ_UI_LOCALE) -DAPP_NAME=$(MOZ_APP_DISPLAYNAME)
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/chrome/branding/brand.properties
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/branding/brand.properties Sun Aug 24 00:42:42
2008
@@ -0,0 +1,4 @@
+#filter substitution
+brandShortName=@APP_NAME@
+brandFullName=@APP_NAME@
+vendorShortName=Mozilla
Added: trunk/gom/xulapp/chrome/branding/jar.mn
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/branding/jar.mn Sun Aug 24 00:42:42 2008
@@ -0,0 +1,6 @@
+#filter substitution
+
+gom.jar:
+% content branding %branding/
+% locale branding @AB_CD@ %branding/
+* branding/brand.properties (brand.properties)
Modified: trunk/gom/xulapp/chrome/chrome.manifest
==============================================================================
--- /trunk/gom/src/xulapp/chrome/chrome.manifest (original)
+++ trunk/gom/xulapp/chrome/chrome.manifest Sun Aug 24 00:42:42 2008
@@ -1,2 +1,2 @@
-content xpgom file:content/xpgom/
+content gom file:content/gom/
Added: trunk/gom/xulapp/chrome/content/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/content/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,45 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/chrome/content/gom.js
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/content/gom.js Sun Aug 24 00:42:42 2008
@@ -0,0 +1,14 @@
+function main () {
+ const Ci = Components.interfaces;
+ dump ("Ok, let's see what we've got.\n");
+ var cmdLine = window.arguments[0];
+ cmdLine = cmdLine.QueryInterface (Ci.nsICommandLine);
+ var url = cmdLine.getArgument (0);
+ alert (url);
+};
+function go () {
+ var urlbar = document.getElementById ('urlbar');
+ var browser = document.getElementById ('browser');
+ browser.loadURI (urlbar.value, null, null);
+};
+//addEventListener("load", main, false);
Added: trunk/gom/xulapp/chrome/content/gom.xul
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/content/gom.xul Sun Aug 24 00:42:42 2008
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<window
+ id="main"
+ title="Gom"
+ height="300"
+ width="400"
+ xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ <script src="gom.js"/>
+ <hbox>
+ <textbox id="urlbar" flex="1"
value="file:///Users/jacob/cvs/gom/examples/console.gom" onchange="go();"/>
+ <button id="go" label="Go" oncommand="go();"/>
+ </hbox>
+ <browser id="browser" src="" flex="1" type="content-primary"/>
+</window>
Added: trunk/gom/xulapp/chrome/content/jar.mn
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/content/jar.mn Sun Aug 24 00:42:42 2008
@@ -0,0 +1,4 @@
+gom.jar:
+% content gom %content/
+ content/gom.xul
+ content/gom.js
Added: trunk/gom/xulapp/chrome/locales/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/locales/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,47 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+DEFINES += -DAB_CD=$(MOZ_UI_LOCALE)
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/chrome/locales/en-US/updater.ini
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/locales/en-US/updater.ini Sun Aug 24 00:42:42
2008
@@ -0,0 +1,3 @@
+[Strings]
+Title=Software Update
+Info=Gom is installing your updates and will start in a few moments...
Added: trunk/gom/xulapp/chrome/locales/jar.mn
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/chrome/locales/jar.mn Sun Aug 24 00:42:42 2008
@@ -0,0 +1,5 @@
+#filter substitution
+
+@AB_CD@.jar:
+% locale gom @AB_CD@ %
+# update.properties (@AB_CD@/update.properties)
Added: trunk/gom/xulapp/components/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/components/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,47 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+DIRS = gom
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/components/gom/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/components/gom/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,51 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+DIRS = public src
+
+#ifdef MOZ_MOCHITEST
+#DIRS += tests
+#endif
+
+include $(topsrcdir)/config/rules.mk
Added: trunk/gom/xulapp/components/gom/public/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/components/gom/public/Makefile.in Sun Aug 24 00:42:42
2008
@@ -0,0 +1,49 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../../../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+MODULE = $(MOZ_APP_NAME)
+
+XPIDLSRCS = xgIGObjectWrapper.idl
+
+include $(topsrcdir)/config/rules.mk
Copied: trunk/gom/xulapp/components/gom/public/xgIGObjectWrapper.idl (from
r78, /trunk/gom/idl/xgPIWrapped.idl)
==============================================================================
--- /trunk/gom/idl/xgPIWrapped.idl (original)
+++ trunk/gom/xulapp/components/gom/public/xgIGObjectWrapper.idl Sun Aug 24
00:42:42 2008
@@ -30,7 +30,7 @@
[ptr] native xgNativeGObject(GObject);
[uuid(97457374-87E2-4213-9B18-9ED575692D2E)]
-interface xgPIWrapped : nsISupports
+interface xgIGObjectWrapper : nsISupports
{
xgNativeGObject getWrappedGObject();
};
Added: trunk/gom/xulapp/components/gom/src/Makefile.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/components/gom/src/Makefile.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,76 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH = ../../../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+MODULE = gom
+LIBRARY_NAME = xpgom
+IS_COMPONENT = 1
+USE_STATIC_LIBS = 1
+
+REQUIRES = \
+ content \
+ dom \
+ js \
+ layout \
+ widget \
+ xpcom \
+ xpconnect \
+ $(NULL)
+
+LOCAL_INCLUDES += $(MOZ_GTK2_CFLAGS)
+
+CPPSRCS = \
+ xgGomElementFactory.cpp \
+ xgGtkElement.cpp \
+ xgGtkElementFactory.cpp \
+ xgGomModule.cpp \
+ xgScriptElement.cpp \
+ $(NULL)
+
+EXTRA_DSO_LDOPTS = \
+ $(XPCOM_GLUE_LDOPTS) \
+ $(MOZ_GTK2_LIBS) \
+ $(NSPR_LIBS) \
+ $(NULL)
+
+include $(topsrcdir)/config/rules.mk
Copied: trunk/gom/xulapp/components/gom/src/xgGomElementFactory.cpp (from
r78, /trunk/gom/src/xpgom/xgGomElementFactory.cc)
==============================================================================
--- /trunk/gom/src/xpgom/xgGomElementFactory.cc (original)
+++ trunk/gom/xulapp/components/gom/src/xgGomElementFactory.cpp Sun Aug 24
00:42:42 2008
@@ -21,11 +21,13 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
+#ifdef HAVE_CONFIG_H
#include "config.h"
+#endif
-#include "xpgom/xgGomElementFactory.hh"
-#include "xpgom/xgScriptElement.hh"
-#include "xpgom/xgString.hh"
+#include "xgGomElementFactory.h"
+#include "xgScriptElement.h"
+#include "xgString.h"
#include <nsISupportsUtils.h>
Copied: trunk/gom/xulapp/components/gom/src/xgGomModule.cpp (from r78,
/trunk/gom/src/xpgom/xgGomModule.cc)
==============================================================================
--- /trunk/gom/src/xpgom/xgGomModule.cc (original)
+++ trunk/gom/xulapp/components/gom/src/xgGomModule.cpp Sun Aug 24 00:42:42
2008
@@ -21,13 +21,13 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
+#ifdef HAVE_CONFIG_H
#include "config.h"
+#endif
-#include <glib/gmacros.h>
-
-#include "xpgom/xgGomElementFactory.hh"
-#include "xpgom/xgGtkElementFactory.hh"
-#include "xpgom/xgString.hh"
+#include "xgGomElementFactory.h"
+#include "xgGtkElementFactory.h"
+#include "xgString.h"
#include <gtk/gtk.h>
@@ -36,8 +36,8 @@
#include <nsIGenericFactory.h>
#include <nsIXTFElementFactory.h>
-NS_GENERIC_FACTORY_CONSTRUCTOR(xgGomElementFactory);
-NS_GENERIC_FACTORY_CONSTRUCTOR(xgGtkElementFactory);
+NS_GENERIC_FACTORY_CONSTRUCTOR(xgGomElementFactory)
+NS_GENERIC_FACTORY_CONSTRUCTOR(xgGtkElementFactory)
static const nsModuleComponentInfo components[] = {
{
@@ -61,7 +61,7 @@
}
#define WIDGET(w) g_type_qname (w);
-#include "gomwidgets.c"
+#include "gomwidgets.h"
#undef WIDGET
return NS_OK;
Copied: trunk/gom/xulapp/components/gom/src/xgGtkElement.cpp (from r78,
/trunk/gom/src/xpgom/xgGtkElement.cc)
==============================================================================
--- /trunk/gom/src/xpgom/xgGtkElement.cc (original)
+++ trunk/gom/xulapp/components/gom/src/xgGtkElement.cpp Sun Aug 24
00:42:42 2008
@@ -21,19 +21,20 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
+#ifdef HAVE_CONFIG_H
#include "config.h"
+#endif
-#include "xpgom/xgGtkElement.hh"
-
-#include <nsIAtom.h>
-#include <nsIDOMNode.h>
-#include <nsIDOMElement.h>
-#include <nsMemory.h>
+#include "xgGtkElement.h"
#include <gtk/gtk.h>
#include "gommacros.h"
+#include <nsIAtom.h>
+#include <nsIDOMNode.h>
+#include <nsIDOMElement.h>
+
xgGtkElement::xgGtkElement ()
: mType (0),
mObject (NULL),
@@ -53,9 +54,9 @@
}
}
-NS_IMPL_ISUPPORTS3 (xgGtkElement, nsIXTFElement, nsIXTFAttributeHandler,
xgPIWrapped)
+NS_IMPL_ISUPPORTS3 (xgGtkElement, nsIXTFElement, nsIXTFAttributeHandler,
xgIGObjectWrapper)
-extern "C" static void
+static void
free_value (gpointer data)
{
GValue *value = (GValue *)data;
@@ -130,21 +131,7 @@
NS_IMETHODIMP
xgGtkElement::GetScriptingInterfaces (PRUint32 *count, nsIID ***array)
{
- *array = (nsIID **)nsMemory::Alloc (sizeof (nsIID *));
- if (!array) {
- return NS_ERROR_OUT_OF_MEMORY;
- }
-
- const nsIID wrappedIID = XGPIWRAPPED_IID;
- (*array)[0] = (nsIID *)nsMemory::Clone (&wrappedIID, sizeof (nsIID));
- if (!(*array)[0]) {
- nsMemory::Free (*array);
- *array = NULL;
- return NS_ERROR_OUT_OF_MEMORY;
- }
-
- *count = 1;
- return NS_OK;
+ XG_RETURN_NOT_IMPLEMENTED;
}
/* void willChangeDocument (in nsIDOMDocument newDoc); */
@@ -168,7 +155,7 @@
XG_RETURN_NOT_IMPLEMENTED;
}
-extern "C" static void
+static void
append_child_attrs_foreach (gpointer key, gpointer value, gpointer
user_data)
{
GParamSpec *spec;
@@ -212,7 +199,7 @@
}
/* just as a sanity check */
- nsCOMPtr<xgPIWrapped> wrappedParent (do_QueryInterface (newParent));
+ nsCOMPtr<xgIGObjectWrapper> wrappedParent (do_QueryInterface
(newParent));
GObject *parent = NULL;
if (!wrappedParent || NS_FAILED (wrappedParent->GetWrappedGObject
(&parent)) ||
!GTK_IS_CONTAINER (parent)) {
@@ -250,7 +237,7 @@
return NS_ERROR_FAILURE;
}
- nsCOMPtr<xgPIWrapped> wrappedChild (do_QueryInterface (child));
+ nsCOMPtr<xgIGObjectWrapper> wrappedChild (do_QueryInterface (child));
GObject *widget = NULL;
if (!wrappedChild || NS_FAILED (wrappedChild->GetWrappedGObject
(&widget)) ||
!GTK_IS_WIDGET (widget)) {
Copied: trunk/gom/xulapp/components/gom/src/xgGtkElement.h (from r78,
/trunk/gom/include/xpgom/xgGtkElement.hh)
==============================================================================
--- /trunk/gom/include/xpgom/xgGtkElement.hh (original)
+++ trunk/gom/xulapp/components/gom/src/xgGtkElement.h Sun Aug 24 00:42:42
2008
@@ -21,10 +21,10 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
-#ifndef XG_GTK_ELEMENT_HH
-#define XG_GTK_ELEMENT_HH
+#ifndef XG_GTK_ELEMENT_H
+#define XG_GTK_ELEMENT_H
-#include "xgPIWrapped.hh"
+#include "xgIGObjectWrapper.h"
#include <nsIXTFElement.h>
#include <nsIXTFElementWrapper.h>
@@ -35,13 +35,13 @@
class xgGtkElement : public nsIXTFElement,
public nsIXTFAttributeHandler,
- public xgPIWrapped
+ public xgIGObjectWrapper
{
public:
NS_DECL_ISUPPORTS
NS_DECL_NSIXTFELEMENT
NS_DECL_NSIXTFATTRIBUTEHANDLER
- NS_DECL_XGPIWRAPPED
+ NS_DECL_XGIGOBJECTWRAPPER
xgGtkElement();
nsresult Init(GType type);
@@ -56,4 +56,4 @@
GHashTable *mAttrs;
};
-#endif /* XG_GTK_ELEMENT_HH */
+#endif // XG_GTK_ELEMENT_H
Copied: trunk/gom/xulapp/components/gom/src/xgGtkElementFactory.cpp (from
r78, /trunk/gom/src/xpgom/xgGtkElementFactory.cc)
==============================================================================
--- /trunk/gom/src/xpgom/xgGtkElementFactory.cc (original)
+++ trunk/gom/xulapp/components/gom/src/xgGtkElementFactory.cpp Sun Aug 24
00:42:42 2008
@@ -21,11 +21,13 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
+#ifdef HAVE_CONFIG_H
#include "config.h"
+#endif
-#include "xpgom/xgGtkElement.hh"
-#include "xpgom/xgGtkElementFactory.hh"
-#include "xpgom/xgString.hh"
+#include "xgGtkElement.h"
+#include "xgGtkElementFactory.h"
+#include "xgString.h"
#include <nsCOMPtr.h>
Copied: trunk/gom/xulapp/components/gom/src/xgScriptElement.cpp (from r78,
/trunk/gom/src/xpgom/xgScriptElement.cc)
==============================================================================
--- /trunk/gom/src/xpgom/xgScriptElement.cc (original)
+++ trunk/gom/xulapp/components/gom/src/xgScriptElement.cpp Sun Aug 24
00:42:42 2008
@@ -21,9 +21,11 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
+#ifdef HAVE_CONFIG_H
#include "config.h"
+#endif
-#include "xpgom/xgScriptElement.hh"
+#include "xgScriptElement.h"
#include <nsDOMError.h>
#include <nsIAtom.h>
@@ -42,7 +44,7 @@
#include <nsServiceManagerUtils.h>
#include <nsIXTFElementWrapper.h>
-#include <glib/gmessages.h>
+#include <glib.h>
#include <stdio.h>
Copied: trunk/gom/xulapp/components/gom/src/xgScriptElement.h (from r78,
/trunk/gom/include/xpgom/xgScriptElement.hh)
==============================================================================
--- /trunk/gom/include/xpgom/xgScriptElement.hh (original)
+++ trunk/gom/xulapp/components/gom/src/xgScriptElement.h Sun Aug 24
00:42:42 2008
@@ -24,7 +24,7 @@
#ifndef XG_SCRIPT_ELEMENT_HH
#define XG_SCRIPT_ELEMENT_HH
-#include <xpgom/xgString.hh>
+#include <xgString.h>
#include <nsCOMPtr.h>
#include <nsIURI.h>
Added: trunk/gom/xulapp/confvars.sh.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/confvars.sh.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,44 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License
Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS"
basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is McCoy.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation <http://www.mozilla.org/>.
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Dave Townsend <dtow...@oxymoronical.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable
instead
+# of those above. If you wish to allow use of your version of this file
only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the
notice
+# and other provisions required by the GPL or the LGPL. If you do not
delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+MOZ_APP_NAME=gom
+MOZ_APP_DISPLAYNAME=Gom
+MOZ_APP_VERSION=@VERSION@
+
+MOZ_XUL_APP=1
+MOZ_ENABLE_LIBXUL=1
+MOZ_NO_XPCOM_OBSOLETE=1
Added: trunk/gom/xulapp/gom.mozconfig.in
==============================================================================
--- (empty file)
+++ trunk/gom/xulapp/gom.mozconfig.in Sun Aug 24 00:42:42 2008
@@ -0,0 +1,10 @@
+# include (or not) anoter mozconfig
+@HAVE_MOZCONFIG_TRUE@. @MOZCONFIG@
+
+# Options for client.mk.
+mk_add_options MOZ_CO_PROJECTS=xulrunner
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-gom
+
+# Options for 'configure' (same as command-line options).
+ac_add_options --with-libxul-sdk=@XULSDK@
+ac_add_options --enable-application=gom