#!nmake # # The contents of this file are subject to the Netscape 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/NPL/ # # 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 Netscape are # Copyright (C) 1998 Netscape Communications Corporation. All # Rights Reserved. # # Contributor(s): DEPTH=..\.. include <$(DEPTH)/config/config.mak> LIBRARY_NAME=editor # Uncomment the line below, or define MOZ_BUILD_PLAINTEXT_EDITOR_CORE_ONLY # in your environment, to build only the plain text editor core files: # MOZ_BUILD_PLAINTEXT_EDITOR_CORE_ONLY=1 # Editor Core Source Files and Objects: CPPSRCS = \ nsAOLCiter.cpp \ ChangeAttributeTxn.cpp \ CreateElementTxn.cpp \ DeleteElementTxn.cpp \ DeleteRangeTxn.cpp \ DeleteTextTxn.cpp \ EditAggregateTxn.cpp \ EditTxn.cpp \ IMETextTxn.cpp \ InsertElementTxn.cpp \ InsertTextTxn.cpp \ JoinElementTxn.cpp \ nsEditorCommands.cpp \ nsComposerCommands.cpp \ nsEditorController.cpp \ nsComposerController.cpp \ nsEditor.cpp \ nsEditorEventListeners.cpp \ nsEditorUtils.cpp \ nsEditProperty.cpp \ nsInternetCiter.cpp \ nsHTMLEditUtils.cpp \ nsPlaintextDataTransfer.cpp \ nsPlaintextEditor.cpp \ nsSelectionState.cpp \ nsStyleSheetTxns.cpp \ nsTextEditRules.cpp \ !ifdef IBMBIDI nsTextEditRulesBidi.cpp \ !endif nsTextEditUtils.cpp \ nsWrapUtils.cpp \ PlaceholderTxn.cpp \ SplitElementTxn.cpp \ TransactionFactory.cpp \ $(NULL) CPP_OBJS = \ .\$(OBJDIR)\nsAOLCiter.obj \ .\$(OBJDIR)\ChangeAttributeTxn.obj \ .\$(OBJDIR)\CreateElementTxn.obj \ .\$(OBJDIR)\DeleteElementTxn.obj \ .\$(OBJDIR)\DeleteRangeTxn.obj \ .\$(OBJDIR)\DeleteTextTxn.obj \ .\$(OBJDIR)\EditAggregateTxn.obj \ .\$(OBJDIR)\EditTxn.obj \ .\$(OBJDIR)\IMETextTxn.obj \ .\$(OBJDIR)\InsertElementTxn.obj \ .\$(OBJDIR)\InsertTextTxn.obj \ .\$(OBJDIR)\JoinElementTxn.obj \ .\$(OBJDIR)\nsComposerCommands.obj \ .\$(OBJDIR)\nsComposerController.obj \ .\$(OBJDIR)\nsEditorCommands.obj \ .\$(OBJDIR)\nsEditorController.obj \ .\$(OBJDIR)\nsEditorEventListeners.obj \ .\$(OBJDIR)\nsEditor.obj \ .\$(OBJDIR)\nsEditorUtils.obj \ .\$(OBJDIR)\nsEditProperty.obj \ .\$(OBJDIR)\nsHTMLEditUtils.obj \ .\$(OBJDIR)\nsInternetCiter.obj \ .\$(OBJDIR)\nsPlaintextDataTransfer.obj \ .\$(OBJDIR)\nsPlaintextEditor.obj \ .\$(OBJDIR)\nsSelectionState.obj \ .\$(OBJDIR)\nsStyleSheetTxns.obj \ .\$(OBJDIR)\nsTextEditRules.obj \ !ifdef IBMBIDI .\$(OBJDIR)\nsTextEditRulesBidi.obj \ !endif .\$(OBJDIR)\nsTextEditUtils.obj \ .\$(OBJDIR)\PlaceholderTxn.obj \ .\$(OBJDIR)\SplitElementTxn.obj \ .\$(OBJDIR)\TransactionFactory.obj \ .\$(OBJDIR)\nsWrapUtils.obj \ $(NULL) !if defined(MOZ_BUILD_PLAINTEXT_EDITOR_CORE_ONLY) # We're only building the Core PlainText Editor Source so just include # the plain text registration file. CPPSRCS = $(CPPSRCS) \ nsTextEditorReg.cpp \ $(NULL) CPP_OBJS = $(CPP_OBJS) \ .\$(OBJDIR)\nsTextEditorReg.obj \ $(NULL) DEFINES = -DMOZILLA_PLAINTEXT_EDITOR_ONLY $(DEFINES) !else # Building the full blown HTML Editor so add it's source files and objects: CPPSRCS = $(CPPSRCS) \ nsEditorParserObserver.cpp \ nsEditorRegistration.cpp \ nsEditorService.cpp \ nsEditorShell.cpp \ nsEditorShellMouseListener.cpp \ nsHTMLDataTransfer.cpp \ nsHTMLEditor.cpp \ nsHTMLEditorStyle.cpp \ nsHTMLEditRules.cpp \ nsInterfaceState.cpp \ nsTableEditor.cpp \ nsWSRunObject.cpp \ TextEditorTest.cpp \ TypeInState.cpp \ SetDocTitleTxn.cpp \ $(NULL) CPP_OBJS = $(CPP_OBJS) \ .\$(OBJDIR)\nsEditorParserObserver.obj \ .\$(OBJDIR)\nsEditorRegistration.obj \ .\$(OBJDIR)\nsEditorService.obj \ .\$(OBJDIR)\nsEditorShellMouseListener.obj \ .\$(OBJDIR)\nsEditorShell.obj \ .\$(OBJDIR)\nsHTMLDataTransfer.obj \ .\$(OBJDIR)\nsHTMLEditor.obj \ .\$(OBJDIR)\nsHTMLEditorStyle.obj \ .\$(OBJDIR)\nsHTMLEditRules.obj \ .\$(OBJDIR)\nsInterfaceState.obj \ .\$(OBJDIR)\nsTableEditor.obj \ .\$(OBJDIR)\nsWSRunObject.obj \ .\$(OBJDIR)\TextEditorTest.obj \ .\$(OBJDIR)\TypeInState.obj \ .\$(OBJDIR)\SetDocTitleTxn.obj \ $(NULL) # Enable Editor API Logging! ENABLE_EDITOR_API_LOG=1 !if defined(ENABLE_EDITOR_API_LOG) CPPSRCS = $(CPPSRCS) \ nsHTMLEditorLog.cpp \ nsEditorTxnLog.cpp \ $(NULL) CPP_OBJS = $(CPP_OBJS) \ .\$(OBJDIR)\nsHTMLEditorLog.obj \ .\$(OBJDIR)\nsEditorTxnLog.obj \ $(NULL) DEFINES = -DENABLE_EDITOR_API_LOG $(DEFINES) !endif !endif MODULE=editor MAKE_OBJ_TYPE = DLL DLLNAME = editor DLL=.\$(OBJDIR)\$(DLLNAME).dll LCFLAGS = \ $(LCFLAGS) \ $(DEFINES) \ $(NULL) # These are the libraries we need to link with to create the dll LLIBS= \ $(DIST)\lib\xpcom.lib \ $(DIST)\lib\js3250.lib \ $(DIST)\lib\gkparser.lib \ $(DIST)\lib\raptorwidget_s.lib \ $(DIST)\lib\timer_s.lib \ $(LIBNSPR) include <$(DEPTH)\config\rules.mak> install:: $(DLL) $(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).dll $(DIST)\bin\components $(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).lib $(DIST)\lib clobber:: rm -f $(DIST)\bin\components\$(DLLNAME).dll rm -f $(DIST)\lib\$(DLLNAME).lib