# 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 mozilla.org code. # # The Initial Developer of the Original Code is Sun Microsystems, # Inc. Portions created by Sun are # Copyright (C) 1999 Sun Microsystems, Inc. All # Rights Reserved. # # Contributor(s): DEPTH = ../../.. topsrcdir = $(DEPTH) srcdir = $(topsrcdir)/java/webclient/src_moz VPATH = $(topsrcdir)/java/webclient/src_moz # IMPORTANT: on Linux, if building webclient with a non-debug mozilla # tree, the libwidget_gtk.so binary produced will not work with # webclient. Namely, the symbol handle_gdk_event__FP9_GdkEventPv will # be defined locally, not globaly, as is required. For the webclient # 1.0 release, we're going to bundle a libwidget_gtk.so with the xpi. # If you want to do a non-debug build of your own, you must make sure # yor libwidget_gtk.so is linked without these options: # -DNDEBUG -DTRIMMED # and with these options # -DNDEBUG -DDEBUG_edburns # If your libwidget_gtk.so has this symbol: # 0003b2d0 T handle_gdk_event__FP9_GdkEventPv # with the capital T, you're ok. The version of libwidget_gtk.so used # in the webclient 1.0 bundle is available at: # . # to build WEBCLIENT_PACKAGE_BUILD on linux, grab libwidget_gtk.so from # the above URL and put it in the same directory as this file. # We don't need to build the stubs in the BAL case. ifeq ($(BAL_INTERFACE),) DIRS = motif endif JAVAHOME = $(JDKHOME) include $(DEPTH)/config/autoconf.mk ifneq ($(BAL_INTERFACE),) LIBRARY_NAME = webclient_bal else LIBRARY_NAME = webclient endif CPPSRCS = \ ns_util.cpp \ ns_util_export.cpp \ dom_util.cpp \ nsActions.cpp \ rdf_util.cpp \ BookmarksImpl.cpp \ CBrowserContainer.cpp \ PromptActionEvents.cpp \ CurrentPageImpl.cpp \ CurrentPageActionEvents.cpp \ HistoryImpl.cpp \ HistoryActionEvents.cpp \ ISupportsPeer.cpp \ NativeEventThread.cpp \ NativeEventThreadActionEvents.cpp \ NavigationImpl.cpp \ NavigationActionEvents.cpp \ InputStreamShim.cpp \ RDFEnumeration.cpp \ RDFTreeNode.cpp \ RDFActionEvents.cpp \ wsRDFObserver.cpp \ WindowControlImpl.cpp \ WindowControlActionEvents.cpp \ PreferencesImpl.cpp \ PreferencesActionEvents.cpp \ WrapperFactoryImpl.cpp \ motif/MotifBrowserControlCanvas.cpp \ motif/gtkmozilla.cpp \ $(NULL) include $(topsrcdir)/config/rules.mk ifdef MOZ_ENABLE_GTK ifndef MOZ_MONOLITHIC_TOOLKIT CXXFLAGS += $(MOZ_GTK_CFLAGS) CFLAGS += $(MOZ_GTK_CFLAGS) # Adding $(JDKHOME)/jre/lib/sparc because we need to link against # the libjawt.so shared library for the JAWT Native Interface # functionality to work correctly. EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L$(JDKHOME)/jre/lib/sparc -L$(JDKHOME)/jre/lib/i386 -ljawt -L/usr/X11R6/lib -lXt else CXXFLAGS += $(TK_CFLAGS) CFLAGS += $(TK_CFLAGS) EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L$(JDKHOME)/jre/lib/sparc -L$(JDKHOME)/jre/lib/i386 -ljawt -L/usr/X11R6/lib -lXt endif endif ifneq ($(BAL_INTERFACE),) CXXFLAGS += -DBAL_INTERFACE endif EXTRA_DSO_LDOPTS += -L$(DEPTH)/dist/lib -lxpcom ifneq ($(BAL_INTERFACE),) EXTRA_DSO_LDOPTS += -lwc_share_bal else EXTRA_DSO_LDOPTS += -lwc_share endif ifeq ($(OS_ARCH),Linux) INCLUDES := -I$(JDKHOME)/include -I$(JDKHOME)/include/linux $(INCLUDES) \ -I$(DEPTH)/widget/src/gtk -I../src_share else INCLUDES := -I$(JDKHOME)/include -I$(JDKHOME)/include/solaris $(INCLUDES) \ -I$(DEPTH)/widget/src/gtk -I../src_share endif buildRunems: ifeq ($(BAL_INTERFACE),) ifeq ($(PACKAGE_BUILD),) @echo +++ Creating runem. Use this to run the test browser. rm -f runem @echo #!/bin/sh > runem @echo $(PERL) ../src_share/runem.pl org.mozilla.webclient.test.EmbeddedMozillaImpl $(DEPTH) "$$"1 "$$"2 "$$"3 "$$"4 "$$"4 "$$"6 >> runem chmod 755 runem else endif # PACKAGE_BUILD endif # BAL_INTERFACE install:: buildRunems clobber_all:: clobber