--- a/suite/browser/Makefile.in
+++ b/suite/browser/Makefile.in
@@ -37,20 +37,16 @@
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-ifeq ($(OS_ARCH),WINNT)
-PARALLEL_DIRS = public src
-endif
-
ifdef ENABLE_TESTS
PARALLEL_DIRS += test
endif
EXTRA_COMPONENTS = \
SuiteBrowser.manifest \
nsAboutRights.js \
nsBrowserContentHandler.js \
--- a/suite/browser/navigator.js
+++ b/suite/browser/navigator.js
@@ -280,17 +280,16 @@ function removeFormSubmitObserver(observ
* one listener that calls all real handlers.
*/
function pageShowEventHandlers(event)
{
// Filter out events that are not about the document load we are interested in
if (event.originalTarget == content.document) {
checkForDirectoryListing();
- postURLToNativeWidget();
}
}
/**
* Determine whether or not the content area is displaying a page with frames,
* and if so, toggle the display of the 'save frame as' menu item.
**/
function getContentAreaFrameCount()
@@ -1911,35 +1910,16 @@ function loadErrorConsole(aEvent)
function clearErrorNotification()
{
var statusbarDisplay = document.getElementById("statusbar-display");
statusbarDisplay.removeAttribute("error");
statusbarDisplay.removeEventListener("click", loadErrorConsole, true);
consoleListener.isShowingError = false;
}
-const NS_URLWIDGET_CONTRACTID = "@mozilla.org/urlwidget;1";
-var urlWidgetService = null;
-if (NS_URLWIDGET_CONTRACTID in Components.classes) {
- urlWidgetService = Components.classes[NS_URLWIDGET_CONTRACTID]
- .getService(Components.interfaces.nsIUrlWidget);
-}
-
-//Posts the currently displayed url to a native widget so third-party apps can observe it.
-function postURLToNativeWidget()
-{
- if (urlWidgetService) {
- var url = getWebNavigation().currentURI.spec;
- try {
- urlWidgetService.SetURLToHiddenControl(url, window);
- } catch(ex) {
- }
- }
-}
-
function checkForDirectoryListing()
{
if ( "HTTPIndex" in content &&
content.HTTPIndex instanceof Components.interfaces.nsIHTTPIndex ) {
content.defaultCharacterset = getMarkupDocumentViewer().defaultCharacterSet;
}
}
deleted file mode 100644
--- a/suite/browser/public/Makefile.in
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# ***** 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 mozilla.org code.
-#
-# The Initial Developer of the Original Code is
-# Netscape Communications Corporation.
-# Portions created by the Initial Developer are Copyright (C) 2001
-# the Initial Developer. All Rights Reserved.
-#
-# Contributor(s):
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either of 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 = suitebrowser
-XPIDL_MODULE = suitebrowser
-
-XPIDLSRCS += nsIUrlWidget.idl
-
-include $(topsrcdir)/config/rules.mk
-
deleted file mode 100644
--- a/suite/browser/public/nsIUrlWidget.idl
+++ /dev/null
@@ -1,67 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/* ***** 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 mozilla.org code.
- *
- * The Initial Developer of the Original Code is
- * Netscape Communications Corporation.
- * Portions created by the Initial Developer are Copyright (C) 1998
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- * Bill Law <law@netscape.com>
- * Jesse Burris <jburris@mmxi.com>
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of 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 ***** */
-
-//filename: nsIUrlWidget.idl
-
-#include "nsISupports.idl"
-
-interface nsIDOMWindowInternal;
-
-
-/* nsIUrlWidget
- *
- * This interface describes the service that you can use to
- * have the currently displayed url appear in a hidden editbox control.
- * It is created, and called, in navigator.js.
- */
-[scriptable, uuid(1802ee81-34a1-11d4-82ee-0050da2da771)]
-interface nsIUrlWidget : nsISupports {
-
- /*------------------ SetURLToHiddenControl ---------------------
- | Set the currently displayed url to a hidden edit control. |
- | Created the edit control, if not already created. |
- --------------------------------------------------------------*/
- void SetURLToHiddenControl( in string aURL, in nsIDOMWindowInternal parent );
-};
-
-//Used in navigator.js to instantiate and call this class.
-%{C++
-#define NS_IURLWIDGET_CONTRACTID "@mozilla.org/urlwidget;1"
-#define NS_IURLWIDGET_CLASSNAME "nsUrlWidget"
-%}
deleted file mode 100644
--- a/suite/browser/src/Makefile.in
+++ /dev/null
@@ -1,55 +0,0 @@
-#
-# ***** 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 mozilla.org code.
-#
-# The Initial Developer of the Original Code is
-# Netscape Communications Corporation.
-# Portions created by the Initial Developer are Copyright (C) 2001
-# the Initial Developer. All Rights Reserved.
-#
-# Contributor(s):
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either of 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 = suitebrowser
-LIBRARY_NAME = suitebrowser_s
-META_COMPONENT = suite
-
-CPPSRCS += nsUrlWidget.cpp
-
-FORCE_STATIC_LIB = 1
-FORCE_USE_PIC=1
-
-include $(topsrcdir)/config/rules.mk
-
deleted file mode 100644
--- a/suite/browser/src/nsUrlWidget.cpp
+++ /dev/null
@@ -1,143 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* ***** 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 mozilla.org code.
- *
- * The Initial Developer of the Original Code is
- * Netscape Communications Corporation.
- * Portions created by the Initial Developer are Copyright (C) 1998
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- * Bill Law <law@netscape.com>
- * Jesse Burris <jburris@mmxi.com>
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of 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 ***** */
-
-// Filename: nsIUrlWidget.cpp
-
-#include "nsIDocShell.h"
-#include "nsUrlWidget.h"
-#include "nsPIDOMWindow.h"
-#include "nsIBaseWindow.h"
-#include "nsIWidget.h"
-#include "nsCOMPtr.h"
-
-#include <windows.h>
-
-// Define this macro to turn on console debug output.
-//#define DEBUG_URLWIDGET
-
-// Implementation of the nsIUrlWidget interface.
-// Simple initialization function.
-nsresult
-nsUrlWidget::Init()
-{
-
- nsresult rv = NS_OK;
-
- return rv;
-}
-
-NS_IMETHODIMP
-nsUrlWidget::SetURLToHiddenControl( char const *aURL, nsIDOMWindowInternal *parent )
-{
- nsresult rv = NS_OK;
- HWND hEdit=NULL; // Handle to the hidden editbox control.
- HWND hMainFrame=NULL; // Handle to main frame window where our
- //editbox is attached.
-
- static const LONG editControlID = 12345;
-
- nsCOMPtr<nsPIDOMWindow> win( do_QueryInterface(parent) );
- if (!win)
- {
- return NS_ERROR_FAILURE;
- }
-
- nsCOMPtr<nsIBaseWindow> ppBaseWindow =
- do_QueryInterface(win->GetDocShell());
-
- if (ppBaseWindow)
- {
- nsCOMPtr<nsIWidget> ppWidget;
- ppBaseWindow->GetMainWidget(getter_AddRefs(ppWidget));
- hMainFrame = (HWND)ppWidget->GetNativeData(NS_NATIVE_WIDGET);
- }
-
- if (!hMainFrame)
- {
- return NS_ERROR_FAILURE;
- }
-
- // See if edit control has been created already.
- hEdit = GetDlgItem( hMainFrame, 12345 );
-
- if ( !hEdit ) {
- ULONG visibility = 0;
- // Set this to WS_VISIBLE to debug.
- //visibility = WS_VISIBLE;
-
- hEdit = ::CreateWindow("Edit",
- "",
- WS_CHILD | WS_BORDER | visibility,
- CW_USEDEFAULT,
- CW_USEDEFAULT,
- 200,
- 15,
- hMainFrame,
- (HMENU)editControlID,
- NULL,
- NULL);
- }
-
- // OK. If we have an editbox created, and a url, post it.
- if ((aURL != NULL) && (hEdit != NULL))
- {
- #ifdef DEBUG_URLWIDGET
- printf( "nsUrlWidget; window=0x%08X, url=[%s]\n", (int)hEdit, aURL );
- #endif
- ::SendMessage(hEdit, WM_SETTEXT, (WPARAM)0, (LPARAM)aURL);
- }
-
- return rv;
-}
-
-// Use standard implementation of nsISupports stuff.
-NS_IMPL_ISUPPORTS1( nsUrlWidget, nsIUrlWidget )
-
-nsUrlWidget::nsUrlWidget() {
-#ifdef DEBUG_URLWIDGET
-printf( "nsUrlWidget ctor called\n" );
-#endif
-}
-
-
-nsUrlWidget::~nsUrlWidget() {
-#ifdef DEBUG_URLWIDGET
-printf( "nsUrlWidget dtor called\n" );
-#endif
-}
deleted file mode 100644
--- a/suite/browser/src/nsUrlWidget.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/* ***** 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 mozilla.org code.
- *
- * The Initial Developer of the Original Code is
- * Netscape Communications Corporation.
- * Portions created by the Initial Developer are Copyright (C) 1998
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of 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 ***** */
-
-#ifndef nsurlwidget_h___
-#define nsurlwidget_h___
-
-#include "nsIUrlWidget.h"
-
-// {1802EE82-34A1-11d4-82EE-0050DA2DA771}
-#define NS_IURLWIDGET_CID { 0x1802EE82, 0x34A1, 0x11d4, { 0x82, 0xEE, 0x00, 0x50, 0xDA, 0x2D, 0xA7, 0x71 } }
-
-// nsUrlWidget declaration
-class nsUrlWidget : public nsIUrlWidget {
-public:
- nsUrlWidget();
- virtual ~nsUrlWidget();
- nsresult Init();
-
- // Declare all interface methods we must implement.
- NS_DECL_ISUPPORTS
- NS_DECL_NSIURLWIDGET
-};
-#endif // nsurlwidget_h___
--- a/suite/build/Makefile.in
+++ b/suite/build/Makefile.in
@@ -71,21 +71,16 @@ LOCAL_INCLUDES += \
$(NULL)
SHARED_LIBRARY_LIBS = \
../profile/$(LIB_PREFIX)suiteprofile_s.$(LIB_SUFFIX) \
../profile/migration/src/$(LIB_PREFIX)suitemigration_s.$(LIB_SUFFIX) \
../feeds/src/$(LIB_PREFIX)suitefeeds_s.$(LIB_SUFFIX) \
$(NULL)
-ifeq ($(OS_ARCH),WINNT)
-LOCAL_INCLUDES += -I$(topsrcdir)/suite/browser/src
-SHARED_LIBRARY_LIBS += ../browser/src/$(LIB_PREFIX)suitebrowser_s.$(LIB_SUFFIX)
-endif
-
# We need to link the windows shell service into seamonkey.exe.
ifdef BUILD_STATIC_LIBS
BUILD_STATIC_SHELL = 1
DEFINES += -DBUILD_STATIC_SHELL=1
endif
ifndef BUILD_STATIC_SHELL
ifneq (,$(filter windows cocoa gtk2, $(MOZ_WIDGET_TOOLKIT)))
--- a/suite/build/nsSuiteModule.cpp
+++ b/suite/build/nsSuiteModule.cpp
@@ -41,85 +41,74 @@
#include "nsProfileMigrator.h"
#include "nsSeamonkeyProfileMigrator.h"
#include "nsThunderbirdProfileMigrator.h"
#include "nsNetCID.h"
#include "nsRDFCID.h"
#include "nsFeedSniffer.h"
#if defined(XP_WIN)
-#include "nsUrlWidget.h"
#if !defined(BUILD_STATIC_SHELL)
#include "nsWindowsShellService.h"
#endif
#elif defined(XP_MACOSX) && !defined(BUILD_STATIC_SHELL)
#include "nsMacShellService.h"
#elif defined(MOZ_WIDGET_GTK2) && !defined(BUILD_STATIC_SHELL)
#include "nsGNOMEShellService.h"
#endif
/////////////////////////////////////////////////////////////////////////////
#if defined(XP_WIN)
-NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsUrlWidget, Init)
#if !defined(BUILD_STATIC_SHELL)
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsWindowsShellService, Init)
#endif
#elif defined(XP_MACOSX) && !defined(BUILD_STATIC_SHELL)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsMacShellService)
#elif defined(MOZ_WIDGET_GTK2) && !defined(BUILD_STATIC_SHELL)
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGNOMEShellService, Init)
#endif
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSuiteDirectoryProvider)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsProfileMigrator)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSeamonkeyProfileMigrator)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsThunderbirdProfileMigrator)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsFeedSniffer)
-#if defined(XP_WIN)
-NS_DEFINE_NAMED_CID(NS_IURLWIDGET_CID);
-#endif
#if defined(NS_SUITEWININTEGRATION_CID)
NS_DEFINE_NAMED_CID(NS_SUITEWININTEGRATION_CID);
#elif defined(NS_SUITEMACINTEGRATION_CID)
NS_DEFINE_NAMED_CID(NS_SUITEMACINTEGRATION_CID);
#elif defined(NS_SUITEGNOMEINTEGRATION_CID)
NS_DEFINE_NAMED_CID(NS_SUITEGNOMEINTEGRATION_CID);
#endif
NS_DEFINE_NAMED_CID(NS_SUITEDIRECTORYPROVIDER_CID);
NS_DEFINE_NAMED_CID(NS_SUITEPROFILEMIGRATOR_CID);
NS_DEFINE_NAMED_CID(NS_SEAMONKEYPROFILEMIGRATOR_CID);
NS_DEFINE_NAMED_CID(NS_THUNDERBIRDPROFILEMIGRATOR_CID);
NS_DEFINE_NAMED_CID(NS_FEEDSNIFFER_CID);
/////////////////////////////////////////////////////////////////////////////
static const mozilla::Module::CIDEntry kSuiteCIDs[] = {
-#if defined(XP_WIN)
- { &kNS_IURLWIDGET_CID, false, NULL, nsUrlWidgetConstructor },
-#endif
#if defined(NS_SUITEWININTEGRATION_CID)
{ &kNS_SUITEWININTEGRATION_CID, false, NULL, nsWindowsShellServiceConstructor },
#elif defined(NS_SUITEMACINTEGRATION_CID)
{ &kNS_SUITEMACINTEGRATION_CID, false, NULL, nsMacShellServiceConstructor },
#elif defined(NS_SUITEGNOMEINTEGRATION_CID)
{ &kNS_SUITEGNOMEINTEGRATION_CID, false, NULL, nsGNOMEShellServiceConstructor },
#endif
{ &kNS_SUITEDIRECTORYPROVIDER_CID, false, NULL, nsSuiteDirectoryProviderConstructor },
{ &kNS_SUITEPROFILEMIGRATOR_CID, false, NULL, nsProfileMigratorConstructor },
{ &kNS_SEAMONKEYPROFILEMIGRATOR_CID, false, NULL, nsSeamonkeyProfileMigratorConstructor },
{ &kNS_THUNDERBIRDPROFILEMIGRATOR_CID, false, NULL, nsThunderbirdProfileMigratorConstructor },
{ &kNS_FEEDSNIFFER_CID, false, NULL, nsFeedSnifferConstructor },
{ NULL }
};
static const mozilla::Module::ContractIDEntry kSuiteContracts[] = {
-#if defined(XP_WIN)
- { NS_IURLWIDGET_CONTRACTID, &kNS_IURLWIDGET_CID },
-#endif
#if defined(NS_SUITEWININTEGRATION_CID)
{ NS_SUITESHELLSERVICE_CONTRACTID, &kNS_SUITEWININTEGRATION_CID },
{ NS_SUITEFEEDSERVICE_CONTRACTID, &kNS_SUITEWININTEGRATION_CID },
#elif defined(NS_SUITEMACINTEGRATION_CID)
{ NS_SUITEFEEDSERVICE_CONTRACTID, &kNS_SUITEMACINTEGRATION_CID },
#elif defined(NS_SUITEGNOMEINTEGRATION_CID)
{ NS_SUITEFEEDSERVICE_CONTRACTID, &kNS_SUITEGNOMEINTEGRATION_CID },
#endif
--- a/suite/makefiles.sh
+++ b/suite/makefiles.sh
@@ -35,18 +35,16 @@
#
# ***** END LICENSE BLOCK *****
if [ "$COMM_BUILD" ]; then
add_makefiles "
suite/Makefile
suite/app/Makefile
suite/browser/Makefile
- suite/browser/public/Makefile
- suite/browser/src/Makefile
suite/build/Makefile
suite/debugQA/Makefile
suite/debugQA/locales/Makefile
suite/common/Makefile
suite/common/public/Makefile
suite/common/src/Makefile
suite/common/tests/Makefile
suite/components/Makefile