# 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 = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ # 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. include $(DEPTH)/config/autoconf.mk ifneq ($(BAL_INTERFACE),) LIBRARY_NAME = webclient_bal else LIBRARY_NAME = webclient endif REQUIRES = xpcom \ layout \ shistory \ find \ appcomps \ appshell \ xmlextras \ uconv \ unicharutil \ pref \ locale \ intl \ rdf \ bookmarks \ content \ commandhandler \ editor \ string \ embed_base \ webBrowser_core \ webbrwsr \ webshell \ windowwatcher \ profile \ necko \ docshell \ dom \ widget \ uriloader \ webbrowserpersist \ gfx \ gtkembedmoz \ $(NULL) # BROKEN SOURCES # CBrowserContainer.cpp \ # PromptActionEvents.cpp \ # CurrentPageActionEvents.cpp \ # HistoryActionEvents.cpp \ # ISupportsPeer.cpp \ # NativeEventThreadActionEvents.cpp \ # WindowControlActionEvents.cpp \ CPPSRCS = \ HistoryImpl.cpp \ WindowCreator.cpp \ nsActions.cpp \ NavigationActionEvents.cpp \ InputStreamShim.cpp \ NativeInputStreamImpl.cpp \ LoadCompleteProgressListener.cpp \ CurrentPageImpl.cpp \ NativeBrowserControl.cpp \ NativeWrapperFactory.cpp \ EmbedWindow.cpp \ EmbedProgress.cpp \ EmbedEventListener.cpp \ EventRegistrationImpl.cpp \ HttpHeaderVisitorImpl.cpp \ AjaxListener.cpp \ NativeEventThread.cpp \ NavigationImpl.cpp \ ns_util.cpp \ ns_util_export.cpp \ dom_util.cpp \ PreferencesImpl.cpp \ ProfileManagerImpl.cpp \ WrapperFactoryImpl.cpp \ WindowControlImpl.cpp \ $(NULL) # rdf_util.cpp \ # BookmarksImpl.cpp \ # RDFEnumeration.cpp \ # RDFTreeNode.cpp \ # wsRDFObserver.cpp \ ifeq ($(OS_ARCH),Linux) CPPSRCS += \ gtk/GtkBrowserControlCanvas.cpp \ $(NULL) DIRS = gtk else ifeq ($(OS_ARCH),Darwin) CMMSRCS = cocoa/CocoaBrowserControlCanvas.mm CPPSRCS += cocoa/CocoaBrowserControlCanvasImpl.cpp DLL_SUFFIX = .jnilib #DSO_LDOPTS += -L/System/Library/Frameworks/JavaVM.Framework/Libraries -ljawt DSO_LDOPTS += -framework JavaVM -framework AppKit -lobjc -L$(srcdir)/../src_share -framework Carbon else ifeq ($(OS_ARCH),WINNT) CPPSRCS += \ win32/Win32BrowserControlCanvas.cpp \ $(NULL) else CPPSRCS += \ gtk/GtkBrowserControlCanvas.cpp \ $(NULL) DIRS = gtk INCLUDES += -I./gtk endif endif endif EXTRA_LIBS += \ $(XPCOM_LIBS) \ $(NSPR_LIBS) \ $(DIST)/lib/$(LIB_PREFIX)embed_base_s.$(LIB_SUFFIX) \ $(NULL) ifeq ($(OS_ARCH),WINNT) EXTRA_LIBS += \ $(DIST)/lib/wc_share.lib \ $(MOZ_JDKHOME)/lib/jawt.lib \ $(NULL) endif include $(topsrcdir)/config/rules.mk DEFINES += -DMOZILLA_INTERNAL_API -DFORCE_PR_LOG ifdef MOZ_ENABLE_GTK ifndef MOZ_MONOLITHIC_TOOLKIT CXXFLAGS += $(MOZ_GTK_CFLAGS) CFLAGS += $(MOZ_GTK_CFLAGS) EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L/usr/X11R6/lib -lXt else CXXFLAGS += $(TK_CFLAGS) CFLAGS += $(TK_CFLAGS) EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L/usr/X11R6/lib -lXt endif endif ifneq ($(BAL_INTERFACE),) CXXFLAGS += -DBAL_INTERFACE endif ifneq ($(BAL_INTERFACE),) EXTRA_DSO_LDOPTS += -lwc_share_bal else ifneq ($(OS_ARCH),WINNT) EXTRA_DSO_LDOPTS += -lwc_share endif endif INCLUDES += -I$(MOZ_SRC)/mozilla/widget/src/xpwidgets ifeq ($(OS_ARCH),Linux) INCLUDES := -I$(MOZ_JDKHOME)/include -I$(MOZ_JDKHOME)/include/linux $(INCLUDES) \ -I$(DEPTH)/widget/src/gtk -I$(srcdir)/../src_share -I../src_share else ifeq ($(OS_ARCH),WINNT) INCLUDES := -I$(MOZ_JDKHOME)/include -I$(MOZ_JDKHOME)/include/win32 $(INCLUDES) \ -I$(srcdir)/../src_share -I../src_share -I. -I./win32 else ifeq ($(OS_ARCH),Darwin) INCLUDES := -I$(MOZ_JDKHOME)/include $(INCLUDES) -I$(srcdir)/../src_share -I../src_share -I. -I$(srcdir) -I$(srcdir)/cocoa -I./cocoa -I$(DIST)/include/plugin CXXFLAGS += -fobjc-exceptions else INCLUDES := -I$(MOZ_JDKHOME)/include -I$(MOZ_JDKHOME)/include/solaris $(INCLUDES) \ -I$(DEPTH)/widget/src/gtk -I$(srcdir)/../src_share -I../src_share endif endif endif clobber_all:: clobber