Menu

How to compile with MinGW

2007-09-25
2012-11-13
  • Nobody/Anonymous

    Hi

    I have compile NPP 4.3 with MinGW (gcc (GCC) 3.4.2 (mingw-special)), with an updated makefile and fews code modifications, due to an old gcc bug, and a missing #define in commctrl.h

    But i cannot execute npp, even when I add missing dll (Scintilla.dll & SciLexer.dll), and all others files found in the binary install.

    I have error "666" witch say "The specified resource name cannot be found in the image file."

    regards
    Yvon TANGUY.

    ---------------
    Here what I have change:

    ../src/Notepad_plus.h:514: error: `>>' should be `> >' within a nested template argument list
        vector<pair<int, int> > _hideLinesMarks;
           
    ../src/ScitillaComponent/ScintillaEditView.h:82: error: `>>' should be `> >' within a nested template argument list
        typedef vector<pair<int, int> > ColumnModeInfo;
       
    ../src/Notepad_plus.cpp:1965: error: `>>' should be `> >' within a nested template argument list
        vector<pair<int, int> > hotspotStylers;
       
    ../src/WinControls/DockingWnd/DockingCont.cpp:645: error: `TCN_GETOBJECT' undeclared (first use this function)
        // After #include<>
            // This is because commctrl.h does not came with this define.
        #ifndef TCN_GETOBJECT
        #define TCN_GETOBJECT   (TCN_FIRST-3)
        #endif

    And here the makefile:
    <pre>
    # this file is part of notepad++
    # Copyright (C)2003 Don HO ( donho@altern.org )
    #
    # This program is free software; you can redistribute it and/or
    # modify it under the terms of the GNU General Public License
    # as published by the Free Software Foundation; either
    # version 2 of the License, or (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

    .SUFFIXES: .cpp
    CPP = g++
    CC=gcc
    RC = windres

    #UserDefineDialog_res.o
    MAINOBJS = winmain.o Parameters.o Notepad_plus.o Notepad_plus_res.o Utf8_16.o PluginsManager.o UniConversion.o

    SCINTILLAOBJS = ScintillaEditView.o DocTabView.o FindReplaceDlg.o FindReplaceDlg_rc.o UserDefineDialog.o Printer.o \
    UserDefineDialog_res.o GoToLineDlg.o Buffer.o columnEditor.o

    WINCTRLOBJS = TabBar.o ControlsTab.o ToolBar.o StatusBar.o ImageListSet.o FileDialog.o Splitter.o SplitterContainer.o StaticDialog.o \
    URLCtrl.o AboutDlg.o RunDlg.o trayIconControler.o shortcut.o ShortcutMapper.o BabyGridWrapper.o BabyGrid.o ShortcutMapper_rc.o \
    regExtDlg_res.o regExtDlg.o preference_rc.o preferenceDlg.o WindowsDlg_rc.o SizeableDlg.o WinMgr.o WinRect.o WindowsDlg.o DockingManager.o \
    DockingCont.o DockingSplitter.o RunMacroDlg.o TaskList.o common_func.o Gripper.o columnEditor_rc.o DockingGUIWidget_rc.o RunMacroDlg_rc.o \
    shortcut_rc.o RunDlg_res.o TaskListDlg_rc.o TreeView.o

    # DropData.o FontPreviewCombo.o

    WORDSTYLESDLG = WordStyleDlg_rc.o WordStyleDlg.o ColourPicker.o ColourPopup_rc.o ColourPopup.o
    MISCOBJS = SysMsg.o Process.o
    TINYXMLOBJS = tinystr.o tinyxml.o tinyxmlerror.o tinyxmlparser.o

    OBJS = $(MAINOBJS) $(SCINTILLAOBJS) $(WINCTRLOBJS) $(MISCOBJS) $(TINYXMLOBJS) $(WORDSTYLESDLG)
    #
    # the paths
    INCLUDEDIR = ../../scintilla/include
    SRCDIR = ../src
    TARGETDIR=../bin

    ICONESDIR = $(SRCDIR)/icons

    WINCTRLDIR = $(SRCDIR)/WinControls

    SCINTILLADIR = $(SRCDIR)/ScitillaComponent

    TINYXMLDIR = $(SRCDIR)/TinyXml

    TABBARDIR =   $(WINCTRLDIR)/TabBar
    TOOLBARDIR = $(WINCTRLDIR)/ToolBar
    STATUSBARDIR = $(WINCTRLDIR)/StatusBar
    IMGLSTSETDIR = $(WINCTRLDIR)/ImageListSet
    FILEDIALOGDIR = $(WINCTRLDIR)/OpenSaveFileDialog
    SPLITTERDIR = $(WINCTRLDIR)/SplitterContainer
    STATICDLGDIR = $(WINCTRLDIR)/StaticDialog
    ABOUTDLGDIR = $(WINCTRLDIR)/AboutDlg
    RUNDLGDIR = $(STATICDLGDIR)/RunDlg
    SHORTCUTDIR = $(WINCTRLDIR)/shortcut
    MISCDIR = $(SRCDIR)/MISC
    SYSMSGDIR = $(MISCDIR)/SysMsg
    PROCESSDIR = $(MISCDIR)/Process
    REGEXTDIR = $(MISCDIR)/RegExt
    PLUGINSMANAGERDIR = $(MISCDIR)/PluginsManager
    WORDSTYLESDLGDIR = $(WINCTRLDIR)/ColourPicker
    SYSTRAYDIR =   $(WINCTRLDIR)/TrayIcon
    CONTEXTMENUDIR =   $(WINCTRLDIR)/ContextMenu
    SHORTCUTMAPPERDIR = $(WINCTRLDIR)/Grid
    PREFERENCEDLGDIR = $(WINCTRLDIR)/Preference
    WINDOWSDLGDIR = $(WINCTRLDIR)/WindowsDlg
    DOCKINGWNDDIR = $(WINCTRLDIR)/DockingWnd
    TASKLISTDIR = $(WINCTRLDIR)/TaskList
    SHORTCUTDIR = $(WINCTRLDIR)/shortcut
    TREEVIEWDIR = $(WINCTRLDIR)/TreeView

    PROG = $(TARGETDIR)/notepad++.exe
    FONT_SRC=$(SRCDIR)/font/LINEDRAW.TTF
    FONT_TARGET=$(TARGETDIR)/LINEDRAW.TTF

    XMLUSERFILE_SRC=$(SRCDIR)/config.xml
    XMLUSERFILE_TARGET=$(TARGETDIR)/config.xml
    XMLLANGFILE_SRC=$(SRCDIR)/langs.xml
    XMLLANGFILE_TARGET=$(TARGETDIR)/langs.xml

    INCLUDEFLAGS = -I$(INCLUDEDIR) -I$(SCINTILLADIR) -I$(WINCTRLDIR) \
    -I$(TABBARDIR) -I$(TOOLBARDIR) -I$(STATUSBARDIR) -I$(IMGLSTSETDIR) \
    -I$(FILEDIALOGDIR) -I$(SPLITTERDIR) -I$(STATICDLGDIR) -I$(ABOUTDLGDIR) \
    -I$(SYSMSGDIR) -I$(PROCESSDIR) -I$(MISCDIR) -I$(RUNDLGDIR) -I$(SRCDIR) \
    -I$(TINYXMLDIR) -I$(WORDSTYLESDLGDIR) -I$(REGEXTDIR) -I$(PLUGINSMANAGERDIR) \
    -I$(SYSTRAYDIR) -I$(SHORTCUTDIR) -I$(CONTEXTMENUDIR) -I$(SHORTCUTMAPPERDIR) \
    -I$(PREFERENCEDLGDIR) -I$(WINDOWSDLGDIR) -I$(DOCKINGWNDDIR) -I$(TASKLISTDIR)

    DEFINEFLAGS = -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501
    CFLAGS = -Wall -Os -DNDEBUG
    #CFLAGS = -Wall -Os -DDEBUG
    LDFLAGS = -mwindows -Wl,-s -Wl,--gc-sections -lcomctl32 -lshlwapi -lodbc32 -lodbccp32 -Os -s
    #LDFLAGS = -mwindows -lcomctl32 -lshlwapi -llibshell32

    ALL: $(PROG) $(XMLLANGFILE_TARGET) $(FONT_TARGET)

    $(PROG):    $(OBJS)
        $(CPP) -Xlinker --subsystem -Xlinker windows -o $@ $(OBJS) $(LDFLAGS)

    winmain.o : $(SRCDIR)/winmain.cpp $(SRCDIR)/Notepad_plus.h $(SYSMSGDIR)/SysMsg.h $(CONTEXTMENUDIR)/ContextMenu.h
        $(CPP) $(CFLAGS) -c $(SRCDIR)/winmain.cpp -o $@ $(INCLUDEFLAGS)

    Notepad_plus.o : $(SRCDIR)/Notepad_plus.h $(SRCDIR)/Notepad_plus.cpp $(SRCDIR)/Parameters.h \
    $(SCINTILLADIR)/ScintillaEditView.h $(SCINTILLADIR)/DocTabView.h $(SCINTILLADIR)/FindReplaceDlg.h \
    $(SCINTILLADIR)/UserDefineDialog.h $(SCINTILLADIR)/printer.h $(WINCTRLDIR)/Window.h \
    $(TOOLBARDIR)/ToolBar.h $(FILEDIALOGDIR)/FileDialog.h $(SRCDIR)/resource.h \
    $(STATUSBARDIR)/StatusBar.h $(ABOUTDLGDIR)/AboutDlg.h $(IMGLSTSETDIR)/ImageListSet.h \
    $(STATICDLGDIR)/StaticDialog.h $(SPLITTERDIR)/SplitterContainer.h $(SYSMSGDIR)/SysMsg.h \
    $(MISCDIR)/FileNameStringSplitter.h $(SRCDIR)/lastRecentFileList.h $(SRCDIR)/lesDlgs.h $(SHORTCUTDIR)/shortcut.h $(CONTEXTMENUDIR)/ContextMenu.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SRCDIR)/Notepad_plus.cpp -o $@ $(INCLUDEFLAGS)
    #$(PROCESSDIR)/Process.h
    Parameters.o : $(SRCDIR)/Parameters.h $(SRCDIR)/Parameters.cpp $(CONTEXTMENUDIR)/ContextMenu.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SRCDIR)/Parameters.cpp -o $@ $(INCLUDEFLAGS)
       
    UniConversion.o : $(SRCDIR)/UniConversion.h $(SRCDIR)/UniConversion.cpp
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SRCDIR)/UniConversion.cpp -o $@ $(INCLUDEFLAGS)

    Notepad_plus_res.o : $(SRCDIR)/resource.h $(SRCDIR)/Notepad_plus.rc $(SCINTILLADIR)/UserDefineDialog.rc \
    $(RUNDLGDIR)/RunDlg.rc $(SHORTCUTDIR)/shortcut.rc
        $(RC) $(DEFINEFLAGS) --include-dir=$(SRCDIR) -o $@ $(SRCDIR)/Notepad_plus.rc

    Utf8_16.o : $(SRCDIR)/Utf8_16.h $(SRCDIR)/Utf8_16.cpp
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SRCDIR)/Utf8_16.cpp -o $@ $(INCLUDEFLAGS)

    ScintillaEditView.o : $(SCINTILLADIR)/ScintillaEditView.h $(SCINTILLADIR)/ScintillaEditView.cpp $(SRCDIR)/Parameters.h \
    $(WINCTRLDIR)/Window.h $(INCLUDEDIR)/Scintilla.h $(INCLUDEDIR)/SciLexer.h $(SCINTILLADIR)/Buffer.h  \
    $(SCINTILLADIR)/colors.h $(SYSMSGDIR)/SysMsg.h $(STATICDLGDIR)/StaticDialog.h
        $(CPP) $(CFLAGS) -c $(SCINTILLADIR)/ScintillaEditView.cpp -o $@ $(INCLUDEFLAGS)

    DocTabView.o : $(SCINTILLADIR)/DocTabView.h $(SCINTILLADIR)/DocTabView.cpp \
    $(TABBARDIR)/TabBar.h $(IMGLSTSETDIR)/ImageListSet.h $(SCINTILLADIR)/ScintillaEditView.cpp
        $(CPP) $(CFLAGS) -c $(SCINTILLADIR)/DocTabView.cpp -o $@ $(INCLUDEFLAGS)

    FindReplaceDlg.o : $(STATICDLGDIR)/StaticDialog.h $(SRCDIR)/resource.h \
    $(SCINTILLADIR)/FindReplaceDlg.h $(SCINTILLADIR)/FindReplaceDlg.cpp
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SCINTILLADIR)/FindReplaceDlg.cpp -o $@ $(INCLUDEFLAGS)
       
    FindReplaceDlg_rc.o : $(SCINTILLADIR)/FindReplaceDlg.rc $(SCINTILLADIR)/FindReplaceDlg_rc.h $(SCINTILLADIR)/FindReplaceDlg.h
        $(RC) -o $@ $(SCINTILLADIR)/FindReplaceDlg.rc

    UserDefineDialog.o : $(STATICDLGDIR)/StaticDialog.h $(SCINTILLADIR)/ScintillaEditView.h \
    $(SCINTILLADIR)/UserDefineResource.h  $(SCINTILLADIR)/UserDefineDialog.h \
    $(SCINTILLADIR)/UserDefineDialog.cpp
        $(CPP) $(CFLAGS) -c $(SCINTILLADIR)/UserDefineDialog.cpp -o $@ $(INCLUDEFLAGS)

    Printer.o : $(SCINTILLADIR)/Printer.h $(SCINTILLADIR)/Printer.cpp $(SCINTILLADIR)/ScintillaEditView.h
        $(CPP) $(CFLAGS) -c $(SCINTILLADIR)/Printer.cpp -o $@ $(INCLUDEFLAGS)

    UserDefineDialog_res.o : $(SCINTILLADIR)/UserDefineDialog.rc $(SCINTILLADIR)/UserDefineResource.h
        $(RC) -o $@ $(SCINTILLADIR)/UserDefineDialog.rc

    GoToLineDlg.o : $(SCINTILLADIR)/GoToLineDlg.h
        $(CPP) $(CFLAGS) -c $(SCINTILLADIR)/GoToLineDlg.cpp -o $@ $(INCLUDEFLAGS)

    TabBar.o : $(WINCTRLDIR)/Window.h $(TABBARDIR)/TabBar.h $(TABBARDIR)/TabBar.cpp $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(TABBARDIR)/TabBar.cpp -o $@ $(INCLUDEFLAGS)

    ControlsTab.o : $(TABBARDIR)/ControlsTab.h $(TABBARDIR)/ControlsTab.cpp
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(TABBARDIR)/ControlsTab.cpp -o $@ $(INCLUDEFLAGS)

    ToolBar.o: $(WINCTRLDIR)/Window.h $(TOOLBARDIR)/ToolBar.h $(TOOLBARDIR)/ToolBar.cpp \
    $(IMGLSTSETDIR)/ImageListSet.h $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(TOOLBARDIR)/ToolBar.cpp -o $@ $(INCLUDEFLAGS)

    StatusBar.o: $(WINCTRLDIR)/Window.h $(STATUSBARDIR)/StatusBar.h $(STATUSBARDIR)/StatusBar.cpp  $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(STATUSBARDIR)/StatusBar.cpp -o $@ $(INCLUDEFLAGS)

    ImageListSet.o: $(IMGLSTSETDIR)/ImageListSet.h  $(IMGLSTSETDIR)/ImageListSet.cpp
        $(CPP) $(CFLAGS) -c $(IMGLSTSETDIR)/ImageListSet.cpp -o $@ $(INCLUDEFLAGS)

    FileDialog.o: $(FILEDIALOGDIR)/FileDialog.h  $(FILEDIALOGDIR)/FileDialog.cpp
        $(CPP) $(CFLAGS) -c $(FILEDIALOGDIR)/FileDialog.cpp -o $@ $(INCLUDEFLAGS)

    Splitter.o: $(WINCTRLDIR)/Window.h $(SPLITTERDIR)/Splitter.h $(SPLITTERDIR)/Splitter.cpp $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(SPLITTERDIR)/Splitter.cpp -o $@ $(INCLUDEFLAGS)

    SplitterContainer.o: $(WINCTRLDIR)/Window.h $(SPLITTERDIR)/SplitterContainer.h $(SPLITTERDIR)/SplitterContainer.cpp $(SPLITTERDIR)/Splitter.h $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(SPLITTERDIR)/SplitterContainer.cpp -o $@ $(INCLUDEFLAGS)

    StaticDialog.o: $(WINCTRLDIR)/Window.h $(STATICDLGDIR)/StaticDialog.h $(STATICDLGDIR)/StaticDialog.cpp
        $(CPP) $(CFLAGS) -c $(STATICDLGDIR)/StaticDialog.cpp -o $@ $(INCLUDEFLAGS)

    URLCtrl.o: $(WINCTRLDIR)/Window.h $(ABOUTDLGDIR)/URLCtrl.h $(ABOUTDLGDIR)/URLCtrl.cpp
        $(CPP) $(CFLAGS) -c $(ABOUTDLGDIR)/URLCtrl.cpp -o $@ $(INCLUDEFLAGS)

    AboutDlg.o: $(WINCTRLDIR)/Window.h $(ABOUTDLGDIR)/AboutDlg.h $(ABOUTDLGDIR)/AboutDlg.cpp URLCtrl.o
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(ABOUTDLGDIR)/AboutDlg.cpp -o $@ $(INCLUDEFLAGS)

    RunDlg.o: $(WINCTRLDIR)/Window.h $(RUNDLGDIR)/RunDlg.h $(RUNDLGDIR)/RunDlg.cpp $(RUNDLGDIR)/RunDlg.rc
        $(CPP) $(CFLAGS) -c $(RUNDLGDIR)/RunDlg.cpp -o $@ $(INCLUDEFLAGS)

    shortcut.o: $(WINCTRLDIR)/Window.h $(SHORTCUTDIR)/shortcut.h $(SHORTCUTDIR)/shortcut.rc
        $(CPP) $(CFLAGS) -c $(SHORTCUTDIR)/shortcut.cpp -o $@ $(INCLUDEFLAGS)

    shortcut_rc.o : $(SHORTCUTDIR)/shortcut.rc $(SHORTCUTDIR)/shortcutRc.h
        $(RC) -o $@ $(SHORTCUTDIR)/shortcut.rc
       
    RunMacroDlg_rc.o : $(SHORTCUTDIR)/RunMacroDlg.rc $(SHORTCUTDIR)/RunMacroDlg_rc.h
        $(RC) -o $@ $(SHORTCUTDIR)/RunMacroDlg.rc
       
    trayIconControler.o: $(SYSTRAYDIR)/trayIconControler.h
        $(CPP) $(CFLAGS) -c $(SYSTRAYDIR)/trayIconControler.cpp -o $@ $(INCLUDEFLAGS)

    RunDlg_res.o : $(RUNDLGDIR)/RunDlg_rc.h $(RUNDLGDIR)/RunDlg.rc
        $(RC) -o $@ $(RUNDLGDIR)/RunDlg.rc

    SysMsg.o: $(SYSMSGDIR)/SysMsg.h $(SYSMSGDIR)/SysMsg.cpp
        $(CPP) $(CFLAGS) -c $(SYSMSGDIR)/SysMsg.cpp -o $@ $(INCLUDEFLAGS)

    Process.o: $(PROCESSDIR)/Process.h $(PROCESSDIR)/Process.cpp
        $(CPP) $(CFLAGS) -c $(PROCESSDIR)/Process.cpp -o $@ $(INCLUDEFLAGS)

    tinystr.o: $(TINYXMLDIR)/tinystr.h $(TINYXMLDIR)/tinyxml.h
        $(CPP) $(CFLAGS) -c $(TINYXMLDIR)/tinystr.cpp -o $@ $(INCLUDEFLAGS)

    tinyxml.o: $(TINYXMLDIR)/tinyxml.h
        $(CPP) $(CFLAGS) -c $(TINYXMLDIR)/tinyxml.cpp -o $@ $(INCLUDEFLAGS)

    tinyxmlerror.o: $(TINYXMLDIR)/tinyxml.h
        $(CPP) $(CFLAGS) -c $(TINYXMLDIR)/tinyxmlerror.cpp -o $@ $(INCLUDEFLAGS)

    tinyxmlparser.o: $(TINYXMLDIR)/tinyxml.h
        $(CPP) $(CFLAGS) -c $(TINYXMLDIR)/tinyxmlparser.cpp -o $@ $(INCLUDEFLAGS)
    #WebCtrl.o:
    #WebControl.o:
    WordStyleDlg_rc.o : $(WORDSTYLESDLGDIR)/wordstyledlgres.h
        $(RC)  --include-dir=$(SRCDIR) -o $@ $(WORDSTYLESDLGDIR)/WordStyleDlg.rc

    WordStyleDlg.o : $(WORDSTYLESDLGDIR)/WordStyleDlg.h $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(WORDSTYLESDLGDIR)/WordStyleDlg.cpp -o $@ $(INCLUDEFLAGS)

    ColourPicker.o : $(WORDSTYLESDLGDIR)/ColourPicker.h $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(WORDSTYLESDLGDIR)/ColourPicker.cpp -o $@ $(INCLUDEFLAGS)

    ColourPopup_rc.o : $(WORDSTYLESDLGDIR)/ColourPopupResource.h
        $(RC)  --include-dir=$(SRCDIR) -o $@ $(WORDSTYLESDLGDIR)/ColourPopup.rc

    ColourPopup.o : $(WORDSTYLESDLGDIR)/ColourPopup.h $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) -c $(WORDSTYLESDLGDIR)/ColourPopup.cpp -o $@ $(INCLUDEFLAGS)

    #FontPreviewCombo.o : (WORDSTYLESDLGDIR)/FontPreviewCombo.cpp
    #    $(CPP) $(CFLAGS) -c $(WORDSTYLESDLGDIR)/FontPreviewCombo.cpp -o $@ $(INCLUDEFLAGS)

    regExtDlg_res.o : $(REGEXTDIR)/regExtDlgRc.h $(REGEXTDIR)/regExtDlg.rc
        $(RC)  --include-dir=$(SRCDIR) -o $@ $(REGEXTDIR)/regExtDlg.rc

    regExtDlg.o : $(REGEXTDIR)/regExtDlg.h $(REGEXTDIR)/regExtDlg.cpp
        $(CPP) $(CFLAGS) -c $(REGEXTDIR)/regExtDlg.cpp -o $@ $(INCLUDEFLAGS)

    PluginsManager.o : $(PLUGINSMANAGERDIR)/PluginsManager.h $(PLUGINSMANAGERDIR)/PluginInterface.h
        $(CPP) $(CFLAGS) -c $(PLUGINSMANAGERDIR)/PluginsManager.cpp -o $@ $(INCLUDEFLAGS)

    BabyGrid.o : $(SHORTCUTMAPPERDIR)/BabyGrid.h
        $(CPP) $(CFLAGS) -c $(SHORTCUTMAPPERDIR)/BabyGrid.cpp -o $@ $(INCLUDEFLAGS)

    BabyGridWrapper.o : $(SHORTCUTMAPPERDIR)/BabyGridWrapper.h $(SHORTCUTMAPPERDIR)/BabyGrid.h
        $(CPP) $(CFLAGS) -c $(SHORTCUTMAPPERDIR)/BabyGridWrapper.cpp -o $@ $(INCLUDEFLAGS)

    ShortcutMapper_rc.o : $(SHORTCUTMAPPERDIR)/ShortcutMapper.rc $(SHORTCUTMAPPERDIR)/ShortcutMapper_rc.h
        $(RC) -o $@ $(SHORTCUTMAPPERDIR)/ShortcutMapper.rc

    ShortcutMapper.o : $(SHORTCUTMAPPERDIR)/ShortcutMapper.h
        $(CPP) $(CFLAGS) -c $(SHORTCUTMAPPERDIR)/ShortcutMapper.cpp -o $@ $(INCLUDEFLAGS)
       
    preference_rc.o : $(PREFERENCEDLGDIR)/preference_rc.h $(PREFERENCEDLGDIR)/preference.rc
        $(RC) -o $@ $(PREFERENCEDLGDIR)/preference.rc

    preferenceDlg.o : $(PREFERENCEDLGDIR)/preferenceDlg.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(PREFERENCEDLGDIR)/preferenceDlg.cpp -o $@ $(INCLUDEFLAGS)

    WindowsDlg_rc.o : $(WINDOWSDLGDIR)/WindowsDlgRc.h $(WINDOWSDLGDIR)/WindowsDlg.rc
        $(RC) -o $@ $(WINDOWSDLGDIR)/WindowsDlg.rc

    SizeableDlg.o : $(WINDOWSDLGDIR)/SizeableDlg.h
        $(CPP) $(CFLAGS) -c $(WINDOWSDLGDIR)/SizeableDlg.cpp -o $@ $(INCLUDEFLAGS)
       
    WinMgr.o : $(WINDOWSDLGDIR)/WinMgr.h
        $(CPP) $(CFLAGS) -c $(WINDOWSDLGDIR)/WinMgr.cpp -o $@ $(INCLUDEFLAGS)

    WinRect.o : $(WINDOWSDLGDIR)/WinMgr.h
        $(CPP) $(CFLAGS) -c $(WINDOWSDLGDIR)/WinRect.cpp -o $@ $(INCLUDEFLAGS)

    WindowsDlg.o : $(WINDOWSDLGDIR)/WindowsDlg.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(WINDOWSDLGDIR)/WindowsDlg.cpp -o $@ $(INCLUDEFLAGS)
       
    DockingManager.o : $(DOCKINGWNDDIR)/DockingManager.cpp $(DOCKINGWNDDIR)/DockingManager.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(DOCKINGWNDDIR)/DockingManager.cpp -o $@ $(INCLUDEFLAGS)

    DockingCont.o : $(DOCKINGWNDDIR)/DockingCont.cpp $(DOCKINGWNDDIR)/DockingCont.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(DOCKINGWNDDIR)/DockingCont.cpp -o $@ $(INCLUDEFLAGS)

    DockingSplitter.o : $(DOCKINGWNDDIR)/DockingSplitter.cpp $(DOCKINGWNDDIR)/DockingSplitter.h $(DOCKINGWNDDIR)/Docking.h \
                        $(DOCKINGWNDDIR)/dockingResource.h $(SYSMSGDIR)/SysMsg.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(DOCKINGWNDDIR)/DockingSplitter.cpp -o $@ $(INCLUDEFLAGS)

    DockingGUIWidget_rc.o : $(DOCKINGWNDDIR)/DockingGUIWidget.rc $(DOCKINGWNDDIR)/dockingResource.h
        $(RC) -o $@ $(DEFINEFLAGS) --include-dir=$(DOCKINGWNDDIR) $(DOCKINGWNDDIR)/DockingGUIWidget.rc

    DropData.o : $(DOCKINGWNDDIR)/DropData.cpp $(DOCKINGWNDDIR)/DropData.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(DOCKINGWNDDIR)/DropData.cpp -o $@ $(INCLUDEFLAGS)

    Gripper.o : $(DOCKINGWNDDIR)/Gripper.cpp $(DOCKINGWNDDIR)/Gripper.h $(DOCKINGWNDDIR)/Docking.h $(DOCKINGWNDDIR)/dockingResource.h \
                $(DOCKINGWNDDIR)/DockingCont.h $(DOCKINGWNDDIR)/DockingManager.h $(DOCKINGWNDDIR)/common_func.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(DOCKINGWNDDIR)/Gripper.cpp -o $@ $(INCLUDEFLAGS)
       
    common_func.o : $(DOCKINGWNDDIR)/common_func.cpp $(DOCKINGWNDDIR)/common_func.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(DOCKINGWNDDIR)/common_func.cpp -o $@ $(INCLUDEFLAGS)

    Buffer.o : $(SCINTILLADIR)/Buffer.h $(SCINTILLADIR)/Buffer.cpp
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SCINTILLADIR)/Buffer.cpp -o $@ $(INCLUDEFLAGS)
       
    columnEditor.o : $(SCINTILLADIR)/columnEditor.h $(SCINTILLADIR)/columnEditor.cpp
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SCINTILLADIR)/columnEditor.cpp -o $@ $(INCLUDEFLAGS)
       
    columnEditor_rc.o : $(SCINTILLADIR)/columnEditor.rc $(SCINTILLADIR)/columnEditor_rc.h
        $(RC) -o $@ $(SCINTILLADIR)/columnEditor.rc
       
    RunMacroDlg.o : $(SHORTCUTDIR)/RunMacroDlg.cpp $(SHORTCUTDIR)/RunMacroDlg.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(SHORTCUTDIR)/RunMacroDlg.cpp -o $@ $(INCLUDEFLAGS)

    TaskList.o : $(TASKLISTDIR)/TaskList.cpp $(TASKLISTDIR)/TaskList.h $(SYSMSGDIR)/SysMsg.h $(TASKLISTDIR)/TaskListDlg_rc.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(TASKLISTDIR)/TaskList.cpp -o $@ $(INCLUDEFLAGS)
       
    TaskListDlg_rc.o : $(TASKLISTDIR)/TaskListDlg.rc $(TASKLISTDIR)/TaskListDlg.h $(TASKLISTDIR)/TaskListDlg_rc.h
        $(RC) -o $@ $(TASKLISTDIR)/TaskListDlg.rc
       
    TreeView.o : $(TREEVIEWDIR)/TreeView.cpp $(TREEVIEWDIR)/TreeView.h
        $(CPP) $(CFLAGS) $(DEFINEFLAGS) -c $(TREEVIEWDIR)/TreeView.cpp -o $@ $(INCLUDEFLAGS)

    $(FONT_TARGET): $(FONT_SRC)
        cp $^ $@

    $(XMLUSERFILE_TARGET) : $(XMLUSERFILE_SRC)
        cp $^ $@

    $(XMLLANGFILE_TARGET) : $(XMLLANGFILE_SRC)
        cp $^ $@

    clean:
        del $(OBJS)
        del "$(PROG)"
       
    #    $(PROG) $(XMLLANGFILE_TARGET) $(FONT_TARGET)
    <pre>

     
    • Chris Severance

      Chris Severance - 2007-10-01

      The linker doesn't link multiple resource.obj files correctly. The Dev-C++ solution was to make a master.rc that included all the others and that makes the resources work perfectly and as a side benefit they are a bit more compact too. I duplicated that for the MinGW Code::Blocks project. Other compilers do not have this problem. Your MinGW makefile should only have one .rc file in it.

      I made Dev-C++ and Code::Blocks projects that will need some maintenance to get them up to the current version which will allow you to produce working versions of Notepad++ in all the free compilers.

      http://textfx.no-ip.com/textfx/

      It will be down until for a few hours until I can go down and give the server a swift kick.

       
    • Don HO

      Don HO - 2007-10-01

      The Makefile is not maintained anymore.
      Instead, there's CMakeLists.txt available in the "src" directory.

      With it you can generate makefile for MinGW or VC project file via cmake, it depends on the compiler installed in your system.

      For more information of cmake :
      http://www.cmake.org/HTML/Index.html

      Don

       
MongoDB Logo MongoDB