#include "coretools.h" //SplitFilename()
#include "FileOrFolderSelect.h"
-#include "WinClasses.h"
-#include "wclassdefines.h"
-
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
+++ /dev/null
-/**
- * @file WinClasses.cpp
- *
- * @brief Implementation file for CWinClasses
- *
- * @note This code originates from AbstractSpoon / TodoList
- * (http://www.abstractspoon.com/) but is modified to use in
- * WinMerge.
- */
-// RCS ID line follows -- this is updated by CVS
-// $Id$
-
-#include "StdAfx.h"
-#include "WinClasses.h"
-#include "wclassdefines.h"
-
-#include <afxpriv.h>
-
-#ifdef _DEBUG
-#undef THIS_FILE
-static char THIS_FILE[]=__FILE__;
-#define new DEBUG_NEW
-#endif
-
-// helper function for everyone to use
-void TRACEWND(LPCTSTR szFunctionName, HWND hWnd)
-{
-#ifdef _DEBUG
- if (hWnd)
- {
- CString sText;
- // pWnd->GetWindowText(sText);
- TRACE (_T("%s(%s, %s, id = %d)\n"), szFunctionName, CWinClasses::GetClass(hWnd), sText, GetDlgCtrlID(hWnd));
- }
-#endif
-}
-
-#define ADDCONTROL(ctrlname) { CString sCtrl(ctrlname); sCtrl.MakeLower(); s_mapCtrlClasses[sCtrl] = NULL; }
-
-//////////////////////////////////////////////////////////////////////
-// Construction/Destruction
-//////////////////////////////////////////////////////////////////////
-
-CMapStringToPtr CWinClasses::s_mapCtrlClasses;
-
-CString CWinClasses::GetClass(HWND hWnd)
-{
- static TCHAR szWndClass[128] = _T("");
-
- if (hWnd)
- {
- ::GetClassName(hWnd, szWndClass, 127);
- _tcslwr(szWndClass);
-
- return CString(szWndClass);
- }
-
- return _T("");
-}
-
-BOOL CWinClasses::IsClass(HWND hWnd, LPCTSTR szClass)
-{
- if (hWnd)
- {
- TCHAR szWndClass[128] = _T("");
-
- ::GetClassName(hWnd, szWndClass, 127);
- return IsClass(szClass, szWndClass);
- }
-
- return FALSE;
-}
-
-BOOL CWinClasses::IsClassEx(HWND hWnd, LPCTSTR szClass)
-{
- if (hWnd)
- {
- CString sClass = GetClassEx(hWnd);
-
- if (IsClass(sClass, szClass))
- return TRUE;
- else
- {
- CWnd* pWnd = CWnd::FromHandlePermanent(hWnd);
-
- if (pWnd)
- {
- if (sClass == WC_MFCWND)
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCFRAME) && pWnd->IsKindOf(RUNTIME_CLASS(CFrameWnd)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCVIEW) && pWnd->IsKindOf(RUNTIME_CLASS(CView)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCMDIFRAME) && pWnd->IsKindOf(RUNTIME_CLASS(CMDIFrameWnd)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCMDICHILD) && pWnd->IsKindOf(RUNTIME_CLASS(CMDIChildWnd)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCMINIDOCKFRAME) && pWnd->IsKindOf(RUNTIME_CLASS(CMiniDockFrameWnd)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCMINIFRAME) && pWnd->IsKindOf(RUNTIME_CLASS(CMiniFrameWnd)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCSPLITTER) && pWnd->IsKindOf(RUNTIME_CLASS(CSplitterWnd)))
- return TRUE;
-
- else if (IsClass(sClass, WC_MFCDIALOGBAR) && pWnd->IsKindOf(RUNTIME_CLASS(CDialogBar)))
- return TRUE;
-
- else if (IsClass(sClass, WC_CONTROLBAR) && pWnd->IsKindOf(RUNTIME_CLASS(CControlBar)))
- return TRUE;
- }
- }
- }
-
- return FALSE;
-}
-
-BOOL CWinClasses::IsClassEx(LPCTSTR szClass, LPCTSTR szWndClass)
-{
- if (IsClass(szClass, szWndClass)) // string comparison
- return TRUE;
-
- else if (IsClass(szWndClass, WC_MFCFRAME)) // handle frame derivatives
- {
- if (IsClass(szClass, WC_MFCMDIFRAME) || IsClass(szClass, WC_MFCMDICHILD) ||
- IsClass(szClass, WC_MFCMINIDOCKFRAME) || IsClass(szClass, WC_MFCMINIFRAME))
- return TRUE;
- }
-
- return FALSE;
-}
-
-CString CWinClasses::GetClassEx(HWND hWnd)
-{
- CString sClass = GetClass(hWnd);
- sClass.MakeLower();
-
- if (sClass.Find(_T("afx")) == 0) // its an mfc framework base or derived class
- {
- // can do the check if pWnd is permanent else mfc will not yet
- // have hooked up
- CWnd* pWnd = CWnd::FromHandlePermanent(hWnd);
-
- if (pWnd)
- {
- // must do the check in order of most derived class first
- if (pWnd->IsKindOf(RUNTIME_CLASS(CView)))
- return WC_MFCVIEW;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CMDIFrameWnd)))
- return WC_MFCMDIFRAME;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CMDIChildWnd)))
- return WC_MFCMDICHILD;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CMiniDockFrameWnd)))
- return WC_MFCMINIDOCKFRAME;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CMiniFrameWnd)))
- return WC_MFCMINIFRAME;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CFrameWnd))) // this is the catch all for frame wnds
- return WC_MFCFRAME;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CSplitterWnd)))
- return WC_MFCSPLITTER;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CDialogBar)))
- return WC_MFCDIALOGBAR;
-
- else if (pWnd->IsKindOf(RUNTIME_CLASS(CControlBar)))
- return WC_CONTROLBAR;
-
- else
- return WC_MFCWND; // catch all for all window classes
- }
- }
-
- return sClass;
-}
-
-BOOL CWinClasses::IsControlClass(HWND hWnd)
-{
- return IsControlClass(GetClass(hWnd));
-}
-
-BOOL CWinClasses::IsControlClass(LPCTSTR szClass)
-{
- // init
- if (!s_mapCtrlClasses.GetCount())
- {
- ADDCONTROL(WC_BUTTON);
- ADDCONTROL(WC_STATIC);
- ADDCONTROL(WC_EDIT);
- ADDCONTROL(WC_COMBOBOX);
- ADDCONTROL(WC_COMBOLBOX);
- ADDCONTROL(WC_LISTBOX);
- ADDCONTROL(WC_SCROLLBAR);
- ADDCONTROL(WC_TOOLBAR);
- ADDCONTROL(WC_SPIN);
- ADDCONTROL(WC_PROGRESS);
- ADDCONTROL(WC_SLIDER);
- ADDCONTROL(WC_HOTKEY);
- ADDCONTROL(WC_SHELLDLLDEFVIEW);
- ADDCONTROL(WC_STATUSBAR);
- ADDCONTROL(WC_ANIMATE);
- ADDCONTROL(WC_RICHEDIT);
- ADDCONTROL(WC_RICHEDIT20);
- ADDCONTROL(WC_DATETIMEPICK);
- ADDCONTROL(WC_MONTHCAL);
- ADDCONTROL(WC_REBAR);
- ADDCONTROL(WC_TOOLTIPS);
- ADDCONTROL(WC_THUMBNAILVIEW);
- ADDCONTROL(WC_IE);
- ADDCONTROL(WC_SHDOCOBJVW);
- ADDCONTROL(WC_SHELLEMBEDDING);
- }
-
- void* pTemp;
- CString sClass(szClass);
- sClass.MakeLower();
-
- return s_mapCtrlClasses.Lookup(sClass, pTemp);
-}
-
-BOOL CWinClasses::IsEditControl(HWND hWnd)
-{
- CString sClass = GetClass(hWnd);
-
- return (IsClass(sClass, WC_EDIT) ||
- IsClass(sClass, WC_RICHEDIT) ||
- IsClass(sClass, WC_RICHEDIT20));
-}
-
+++ /dev/null
-/**
- * @file WinClasses.h
- *
- * @brief Declaration of CWinClasses class
- *
- * @note This code originates from AbstractSpoon / TodoList
- * (http://www.abstractspoon.com/) but is modified to use in
- * WinMerge.
- */
-// RCS ID line follows -- this is updated by CVS
-// $Id$
-
-#if !defined(AFX_WINCLASSES_H__4A958ACC_A399_4B69_A988_FA70F16C3EAC__INCLUDED_)
-#define AFX_WINCLASSES_H__4A958ACC_A399_4B69_A988_FA70F16C3EAC__INCLUDED_
-
-#if _MSC_VER > 1000
-#pragma once
-#endif // _MSC_VER > 1000
-
-// global helper function for everyone to use
-void TRACEWND(LPCTSTR szFunctionName, HWND hWnd);
-
-class CWinClasses
-{
-public:
- static CString GetClass(HWND hWnd);
- static CString GetClassEx(HWND hWnd); // will also determine the base type of mfc (Afx) classes
- static BOOL IsControlClass(HWND hWnd);
- static BOOL IsControlClass(LPCTSTR szClass);
- static BOOL IsClass(HWND hWnd, LPCTSTR szClass);
- static BOOL IsClassEx(HWND hWnd, LPCTSTR szClass);
- static BOOL IsClass(LPCTSTR szClass, LPCTSTR szWndClass) { return (lstrcmpi(szClass, szWndClass) == 0); }
- static BOOL IsClassEx(LPCTSTR szClass, LPCTSTR szWndClass);
-
- static BOOL IsEditControl(HWND hWnd);
-
-protected:
- static CMapStringToPtr s_mapCtrlClasses;
-};
-
-#endif // !defined(AFX_WINCLASSES_H__4A958ACC_A399_4B69_A988_FA70F16C3EAC__INCLUDED_)
+++ /dev/null
-#if !defined(AFX_WCDEFINES_H__E2EFA8F0_B9CD_41AB_98FD_812C963B7ACC__INCLUDED_)
-#define AFX_WCDEFINES_H__E2EFA8F0_B9CD_41AB_98FD_812C963B7ACC__INCLUDED_
-
-#if _MSC_VER > 1000
-#pragma once
-#endif // _MSC_VER > 1000
-
-//////////////////////////
-
-#define WC_BUTTONA "Button" // ansi
-#define WC_BUTTONW L"Button" // wide
-
-#ifdef UNICODE
-#define WC_BUTTON WC_BUTTONW
-#else
-#define WC_BUTTON WC_BUTTONA
-#endif
-
-//////////////////////////
-
-#define WC_STATICA "Static" // ansi
-#define WC_STATICW L"Static" // wide
-
-#ifdef UNICODE
-#define WC_STATIC WC_STATICW
-#else
-#define WC_STATIC WC_STATICA
-#endif
-
-//////////////////////////
-
-#define WC_EDITA "Edit" // ansi
-#define WC_EDITW L"Edit" // wide
-
-#ifdef UNICODE
-#define WC_EDIT WC_EDITW
-#else
-#define WC_EDIT WC_EDITA
-#endif
-
-//////////////////////////
-
-#define WC_COMBOBOXA "ComboBox" // ansi
-#define WC_COMBOBOXW L"ComboBox" // wide
-
-#ifdef UNICODE
-#define WC_COMBOBOX WC_COMBOBOXW
-#else
-#define WC_COMBOBOX WC_COMBOBOXA
-#endif
-
-//////////////////////////
-
-#define WC_COMBOLBOXA "ComboLBox" // ansi
-#define WC_COMBOLBOXW L"ComboLBox" // wide
-
-#ifdef UNICODE
-#define WC_COMBOLBOX WC_COMBOLBOXW
-#else
-#define WC_COMBOLBOX WC_COMBOLBOXA
-#endif
-
-//////////////////////////
-
-#define WC_LISTBOXA "ListBox" // ansi
-#define WC_LISTBOXW L"ListBox" // wide
-
-#ifdef UNICODE
-#define WC_LISTBOX WC_LISTBOXW
-#else
-#define WC_LISTBOX WC_LISTBOXA
-#endif
-
-//////////////////////////
-
-#ifndef WC_SCROLLBARA
-
-#define WC_SCROLLBARA "Scrollbar" // ansi
-#define WC_SCROLLBARW L"Scrollbar" // wide
-
-#ifdef UNICODE
-#define WC_SCROLLBAR WC_SCROLLBARW
-#else
-#define WC_SCROLLBAR WC_SCROLLBARA
-#endif
-
-#endif
-
-//////////////////////////
-
-#define WC_TOOLBARA "toolbarwindow32" // ansi
-#define WC_TOOLBARW L"toolbarwindow32" // wide
-
-#ifdef UNICODE
-#define WC_TOOLBAR WC_TOOLBARW
-#else
-#define WC_TOOLBAR WC_TOOLBARA
-#endif
-
-//////////////////////////
-
-#define WC_SPINA "msctls_updown32" // ansi
-#define WC_SPINW L"msctls_updown32" // wide
-
-#ifdef UNICODE
-#define WC_SPIN WC_SPINW
-#else
-#define WC_SPIN WC_SPINA
-#endif
-
-//////////////////////////
-
-#define WC_PROGRESSA "msctls_progress32" // ansi
-#define WC_PROGRESSW L"msctls_progress32" // wide
-
-#ifdef UNICODE
-#define WC_PROGRESS WC_PROGRESSW
-#else
-#define WC_PROGRESS WC_PROGRESSA
-#endif
-
-//////////////////////////
-
-#define WC_SLIDERA "msctls_trackbar32" // ansi
-#define WC_SLIDERW L"msctls_trackbar32" // wide
-
-#ifdef UNICODE
-#define WC_SLIDER WC_SLIDERW
-#else
-#define WC_SLIDER WC_SLIDERA
-#endif
-
-//////////////////////////
-
-#define WC_HOTKEYA "msctls_hotkey32" // ansi
-#define WC_HOTKEYW L"msctls_hotkey32" // wide
-
-#ifdef UNICODE
-#define WC_HOTKEY WC_HOTKEYW
-#else
-#define WC_HOTKEY WC_HOTKEYA
-#endif
-
-//////////////////////////
-
-#define WC_SHELLDLLDEFVIEWA "SHELLDLL_DefView" // ansi
-#define WC_SHELLDLLDEFVIEWW L"SHELLDLL_DefView" // wide
-
-#ifdef UNICODE
-#define WC_SHELLDLLDEFVIEW WC_SHELLDLLDEFVIEWW
-#else
-#define WC_SHELLDLLDEFVIEW WC_SHELLDLLDEFVIEWA
-#endif
-
-//////////////////////////
-
-#define WC_STATUSBARA "msctls_statusbar32" // ansi
-#define WC_STATUSBARW L"msctls_statusbar32" // wide
-
-#ifdef UNICODE
-#define WC_STATUSBAR WC_STATUSBARW
-#else
-#define WC_STATUSBAR WC_STATUSBARA
-#endif
-
-//////////////////////////
-
-#define WC_ANIMATEA "SysAnimate32" // ansi
-#define WC_ANIMATEW L"SysAnimate32" // wide
-
-#ifdef UNICODE
-#define WC_ANIMATE WC_ANIMATEW
-#else
-#define WC_ANIMATE WC_ANIMATEA
-#endif
-
-//////////////////////////
-
-#define WC_RICHEDITA "Richedit" // ansi
-#define WC_RICHEDITW L"Richedit" // wide
-
-#ifdef UNICODE
-#define WC_RICHEDIT WC_RICHEDITW
-#else
-#define WC_RICHEDIT WC_RICHEDITA
-#endif
-
-//////////////////////////
-
-#define WC_RICHEDIT20A "RichEdit20W" // ansi
-#define WC_RICHEDIT20W L"RichEdit20W" // wide
-
-#ifdef UNICODE
-#define WC_RICHEDIT20 WC_RICHEDIT20W
-#else
-#define WC_RICHEDIT20 WC_RICHEDIT20A
-#endif
-
-//////////////////////////
-
-#define WC_DATETIMEPICKA "SysDateTimePick32" // ansi
-#define WC_DATETIMEPICKW L"SysDateTimePick32" // wide
-
-#ifdef UNICODE
-#define WC_DATETIMEPICK WC_DATETIMEPICKW
-#else
-#define WC_DATETIMEPICK WC_DATETIMEPICKA
-#endif
-
-//////////////////////////
-
-#define WC_MONTHCALA "SysMonthCal32" // ansi
-#define WC_MONTHCALW L"SysMonthCal32" // wide
-
-#ifdef UNICODE
-#define WC_MONTHCAL WC_MONTHCALW
-#else
-#define WC_MONTHCAL WC_MONTHCALA
-#endif
-
-//////////////////////////
-
-#define WC_REBARA "ReBarWindow32" // ansi
-#define WC_REBARW L"ReBarWindow32" // wide
-
-#ifdef UNICODE
-#define WC_REBAR WC_REBARW
-#else
-#define WC_REBAR WC_REBARA
-#endif
-
-//////////////////////////
-
-#define WC_DIALOGBOXA "#32770" // ansi
-#define WC_DIALOGBOXW L"#32770" // wide
-
-#ifdef UNICODE
-#define WC_DIALOGBOX WC_DIALOGBOXW
-#else
-#define WC_DIALOGBOX WC_DIALOGBOXA
-#endif
-
-//////////////////////////
-
-#define WC_MDICLIENTA "MDIClient" // ansi
-#define WC_MDICLIENTW L"MDIClient" // wide
-
-#ifdef UNICODE
-#define WC_MDICLIENT WC_MDICLIENTW
-#else
-#define WC_MDICLIENT WC_MDICLIENTA
-#endif
-
-//////////////////////////
-
-#define WC_TOOLTIPSA "tooltips_class32" // ansi
-#define WC_TOOLTIPSW L"tooltips_class32" // wide
-
-#ifdef UNICODE
-#define WC_TOOLTIPS WC_TOOLTIPSW
-#else
-#define WC_TOOLTIPS WC_TOOLTIPSA
-#endif
-
-//////////////////////////
-
-#define WC_THUMBNAILVIEWA "ThumbnailVwExtWnd32" // ansi
-#define WC_THUMBNAILVIEWW L"ThumbnailVwExtWnd32" // wide
-
-#ifdef UNICODE
-#define WC_THUMBNAILVIEW WC_THUMBNAILVIEWW
-#else
-#define WC_THUMBNAILVIEW WC_THUMBNAILVIEWA
-#endif
-
-//////////////////////////
-
-#define WC_IEA "Internet Explorer_Server" // ansi
-#define WC_IEW L"Internet Explorer_Server" // wide
-
-#ifdef UNICODE
-#define WC_IE WC_IEW
-#else
-#define WC_IE WC_IEA
-#endif
-
-//////////////////////////
-
-#define WC_SHDOCOBJVWA "Shell DocObject View" // ansi
-#define WC_SHDOCOBJVWW L"Shell DocObject View" // wide
-
-#ifdef UNICODE
-#define WC_SHDOCOBJVW WC_SHDOCOBJVWW
-#else
-#define WC_SHDOCOBJVW WC_SHDOCOBJVWA
-#endif
-
-//////////////////////////
-
-#define WC_SHELLEMBEDDINGA "Shell Embedding" // ansi
-#define WC_SHELLEMBEDDINGW L"Shell Embedding" // wide
-
-#ifdef UNICODE
-#define WC_SHELLEMBEDDING WC_SHELLEMBEDDINGW
-#else
-#define WC_SHELLEMBEDDING WC_SHELLEMBEDDINGA
-#endif
-
-//////////////////////////
-
-#define WC_CONTROLBARA "AfxControlBar" // ansi
-#define WC_CONTROLBARW L"AfxControlBar" // wide
-
-#ifdef UNICODE
-#define WC_CONTROLBAR WC_CONTROLBARW
-#else
-#define WC_CONTROLBAR WC_CONTROLBARA
-#endif
-
-//////////////////////////
-
-#define WC_MFCDIALOGBARA "MfcDialogBar" // ansi
-#define WC_MFCDIALOGBARW L"MfcDialogBar" // wide
-
-#ifdef UNICODE
-#define WC_MFCDIALOGBAR WC_MFCDIALOGBARW
-#else
-#define WC_MFCDIALOGBAR WC_MFCDIALOGBARA
-#endif
-
-//////////////////////////
-
-#define WC_MFCVIEWA "MfcView" // ansi
-#define WC_MFCVIEWW L"MfcView" // wide
-
-#ifdef UNICODE
-#define WC_MFCVIEW WC_MFCVIEWW
-#else
-#define WC_MFCVIEW WC_MFCVIEWA
-#endif
-
-//////////////////////////
-
-#define WC_MFCMDICHILDA "MfcFrameMDIChild" // ansi
-#define WC_MFCMDICHILDW L"MfcFrameMDIChild" // wide
-
-#ifdef UNICODE
-#define WC_MFCMDICHILD WC_MFCMDICHILDW
-#else
-#define WC_MFCMDICHILD WC_MFCMDICHILDA
-#endif
-
-//////////////////////////
-
-#define WC_MFCMDIFRAMEA "MfcFrameMDI" // ansi
-#define WC_MFCMDIFRAMEW L"MfcFrameMDI" // wide
-
-#ifdef UNICODE
-#define WC_MFCMDIFRAME WC_MFCMDIFRAMEW
-#else
-#define WC_MFCMDIFRAME WC_MFCMDIFRAMEA
-#endif
-
-//////////////////////////
-
-#define WC_MFCSPLITTERA "MfcSplitter" // ansi
-#define WC_MFCSPLITTERW L"MfcSplitter" // wide
-
-#ifdef UNICODE
-#define WC_MFCSPLITTER WC_MFCSPLITTERW
-#else
-#define WC_MFCSPLITTER WC_MFCSPLITTERA
-#endif
-
-//////////////////////////
-
-#define WC_MFCFRAMEA "MfcFrame" // ansi
-#define WC_MFCFRAMEW L"MfcFrame" // wide
-
-#ifdef UNICODE
-#define WC_MFCFRAME WC_MFCFRAMEW
-#else
-#define WC_MFCFRAME WC_MFCFRAMEA
-#endif
-
-//////////////////////////
-
-#define WC_MFCMINIDOCKFRAMEA "MfcFrameMiniDock" // ansi
-#define WC_MFCMINIDOCKFRAMEW L"MfcFrameMiniDock" // wide
-
-#ifdef UNICODE
-#define WC_MFCMINIDOCKFRAME WC_MFCMINIDOCKFRAMEW
-#else
-#define WC_MFCMINIDOCKFRAME WC_MFCMINIDOCKFRAMEA
-#endif
-
-//////////////////////////
-
-#define WC_MFCMINIFRAMEA "MfcFrameMini" // ansi
-#define WC_MFCMINIFRAMEW L"MfcFrameMini" // wide
-
-#ifdef UNICODE
-#define WC_MFCMINIFRAME WC_MFCMINIFRAMEW
-#else
-#define WC_MFCMINIFRAME WC_MFCMINIFRAMEA
-#endif
-
-//////////////////////////
-
-#define WC_MFCWNDA "MfcWnd" // ansi
-#define WC_MFCWNDW L"MfcWnd" // wide
-
-#ifdef UNICODE
-#define WC_MFCWND WC_MFCWNDW
-#else
-#define WC_MFCWND WC_MFCWNDA
-#endif
-
-//////////////////////////
-
-#define WC_MENUA "#32768" // ansi
-#define WC_MENUW L"#32768" // wide
-
-#ifdef UNICODE
-#define WC_MENU WC_MENUW
-#else
-#define WC_MENU WC_MENUA
-#endif
-
-//////////////////////////
-
-#endif
\ No newline at end of file
#include "MainFrm.h"
#include "Environment.h"
#include "diffcontext.h" // FILE_SAME
-#include "getopt.h"
-#include "fnmatch.h"
#include "coretools.h"
#include "dirdoc.h"
#include "files.h"
IgnoreDefaultLibraryNames=""\r
GenerateDebugInformation="FALSE"\r
ProgramDatabaseFile=""\r
+ GenerateMapFile="TRUE"\r
SubSystem="2"\r
EntryPointSymbol="wWinMainCRTStartup"\r
TargetMachine="1"/>\r
IgnoreDefaultLibraryNames=""\r
GenerateDebugInformation="TRUE"\r
ProgramDatabaseFile="$(OutDir)/WinMergeU.pdb"\r
+ GenerateMapFile="TRUE"\r
SubSystem="2"\r
EntryPointSymbol="wWinMainCRTStartup"\r
TargetMachine="1"/>\r
IgnoreDefaultLibraryNames=""\r
GenerateDebugInformation="TRUE"\r
ProgramDatabaseFile="$(OutDir)/WinMerge.pdb"\r
+ GenerateMapFile="TRUE"\r
SubSystem="2"\r
TargetMachine="1"/>\r
<Tool\r
IgnoreDefaultLibraryNames=""\r
GenerateDebugInformation="FALSE"\r
ProgramDatabaseFile=""\r
+ GenerateMapFile="TRUE"\r
SubSystem="2"\r
TargetMachine="1"/>\r
<Tool\r
</FileConfiguration>\r
</File>\r
<File\r
- RelativePath="Common\WinClasses.cpp">\r
- <FileConfiguration\r
- Name="UnicodeRelease|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="UnicodeDebug|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Debug|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Release|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""/>\r
- </FileConfiguration>\r
- </File>\r
- <File\r
RelativePath="WMGotoDlg.cpp">\r
<FileConfiguration\r
Name="UnicodeRelease|Win32">\r
RelativePath="WaitStatusCursor.h">\r
</File>\r
<File\r
- RelativePath="Common\wclassdefines.h">\r
- </File>\r
- <File\r
- RelativePath="Common\WinClasses.h">\r
- </File>\r
- <File\r
RelativePath="WMGotoDlg.h">\r
</File>\r
</Filter>\r
RelativePath="diffutils\src\DIFF.H">\r
</File>\r
<File\r
- RelativePath="diffutils\src\DIRENT.C">\r
- <FileConfiguration\r
- Name="UnicodeRelease|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="2"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="UnicodeDebug|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"\r
- BrowseInformation="1"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Debug|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"\r
- BrowseInformation="1"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Release|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="2"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"/>\r
- </FileConfiguration>\r
- </File>\r
- <File\r
- RelativePath="diffutils\src\DIRENT.H">\r
- </File>\r
- <File\r
RelativePath="diffutils\src\ED.C">\r
<FileConfiguration\r
Name="UnicodeRelease|Win32">\r
</FileConfiguration>\r
</File>\r
<File\r
- RelativePath="diffutils\lib\FNMATCH.C">\r
- <FileConfiguration\r
- Name="UnicodeRelease|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="2"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="UnicodeDebug|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"\r
- BrowseInformation="1"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Debug|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"\r
- BrowseInformation="1"/>\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Release|Win32">\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="2"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- UsePrecompiledHeader="0"/>\r
- </FileConfiguration>\r
- </File>\r
- <File\r
- RelativePath="diffutils\lib\FNMATCH.H">\r
- </File>\r
- <File\r
- RelativePath="diffutils\lib\GETOPT.H">\r
- </File>\r
- <File\r
RelativePath="diffutils\GnuVersion.c">\r
<FileConfiguration\r
Name="UnicodeRelease|Win32">\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX86</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX64</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
+ <OptimizeReferences>\r
+ </OptimizeReferences>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX86</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX64</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX86</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX64</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX86</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<DataExecutionPrevention>\r
</DataExecutionPrevention>\r
<TargetMachine>MachineX64</TargetMachine>\r
+ <GenerateMapFile>true</GenerateMapFile>\r
</Link>\r
<PostBuildEvent>\r
<Command>\r
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
</ClCompile>\r
- <ClCompile Include="Common\WinClasses.cpp">\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MinSpace</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MinSpace</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">MinSpace</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">MinSpace</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">MinSpace</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">MinSpace</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- </ClCompile>\r
<ClCompile Include="WMGotoDlg.cpp">\r
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>\r
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">\r
</PrecompiledHeader>\r
</ClCompile>\r
- <ClCompile Include="diffutils\src\DIRENT.C">\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">\r
- </PrecompiledHeader>\r
- </ClCompile>\r
<ClCompile Include="diffutils\src\ED.C">\r
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>\r
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">\r
</PrecompiledHeader>\r
</ClCompile>\r
- <ClCompile Include="diffutils\lib\FNMATCH.C">\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='UnicodeDebug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|Win32'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='UnicodeRelease|x64'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='X64 Debug|Win32'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">Disabled</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">\r
- </PrecompiledHeader>\r
- <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='X64 Debug|x64'">true</BrowseInformation>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Release|Win32'">\r
- </PrecompiledHeader>\r
- <Optimization Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">MaxSpeed</Optimization>\r
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='X64 Release|x64'">\r
- </PrecompiledHeader>\r
- </ClCompile>\r
<ClCompile Include="diffutils\GnuVersion.c">\r
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>\r
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
<ClInclude Include="VSSHelper.h" />\r
<ClInclude Include="VssPrompt.h" />\r
<ClInclude Include="WaitStatusCursor.h" />\r
- <ClInclude Include="Common\wclassdefines.h" />\r
- <ClInclude Include="Common\WinClasses.h" />\r
<ClInclude Include="WinMergeCmdLineParser.h" />\r
<ClInclude Include="WMGotoDlg.h" />\r
<ClInclude Include="editlib\ccrystaleditview.h" />\r
<ClInclude Include="diffutils\lib\CMPBUF.H" />\r
<ClInclude Include="diffutils\CONFIG.H" />\r
<ClInclude Include="diffutils\src\DIFF.H" />\r
- <ClInclude Include="diffutils\src\DIRENT.H" />\r
- <ClInclude Include="diffutils\lib\FNMATCH.H" />\r
- <ClInclude Include="diffutils\lib\GETOPT.H" />\r
<ClInclude Include="diffutils\lib\REGEX.H" />\r
<ClInclude Include="diffutils\src\SYSTEM.H" />\r
<ClInclude Include="CompareEngines\ByteComparator.h" />\r
<ClCompile Include="WaitStatusCursor.cpp">\r
<Filter>Source Files</Filter>\r
</ClCompile>\r
- <ClCompile Include="Common\WinClasses.cpp">\r
- <Filter>Source Files</Filter>\r
- </ClCompile>\r
<ClCompile Include="WMGotoDlg.cpp">\r
<Filter>Source Files</Filter>\r
</ClCompile>\r
<ClCompile Include="diffutils\src\Diff.cpp">\r
<Filter>DiffEngine</Filter>\r
</ClCompile>\r
- <ClCompile Include="diffutils\src\DIRENT.C">\r
- <Filter>DiffEngine</Filter>\r
- </ClCompile>\r
<ClCompile Include="diffutils\src\ED.C">\r
<Filter>DiffEngine</Filter>\r
</ClCompile>\r
- <ClCompile Include="diffutils\lib\FNMATCH.C">\r
- <Filter>DiffEngine</Filter>\r
- </ClCompile>\r
<ClCompile Include="diffutils\GnuVersion.c">\r
<Filter>DiffEngine</Filter>\r
</ClCompile>\r
<ClCompile Include="diffutils\src\NORMAL.C">\r
<Filter>DiffEngine</Filter>\r
</ClCompile>\r
- <ClCompile Include="diffutils\lib\REGEX.C">\r
- <Filter>DiffEngine</Filter>\r
- </ClCompile>\r
<ClCompile Include="diffutils\src\SIDE.C">\r
<Filter>DiffEngine</Filter>\r
</ClCompile>\r
<ClInclude Include="WaitStatusCursor.h">\r
<Filter>Header Files</Filter>\r
</ClInclude>\r
- <ClInclude Include="Common\wclassdefines.h">\r
- <Filter>Header Files</Filter>\r
- </ClInclude>\r
- <ClInclude Include="Common\WinClasses.h">\r
- <Filter>Header Files</Filter>\r
- </ClInclude>\r
<ClInclude Include="WinMergeCmdLineParser.h">\r
<Filter>Header Files</Filter>\r
</ClInclude>\r
<ClInclude Include="diffutils\src\DIFF.H">\r
<Filter>DiffEngine</Filter>\r
</ClInclude>\r
- <ClInclude Include="diffutils\src\DIRENT.H">\r
- <Filter>DiffEngine</Filter>\r
- </ClInclude>\r
- <ClInclude Include="diffutils\lib\FNMATCH.H">\r
- <Filter>DiffEngine</Filter>\r
- </ClInclude>\r
- <ClInclude Include="diffutils\lib\GETOPT.H">\r
- <Filter>DiffEngine</Filter>\r
- </ClInclude>\r
- <ClInclude Include="diffutils\lib\REGEX.H">\r
- <Filter>DiffEngine</Filter>\r
- </ClInclude>\r
<ClInclude Include="diffutils\src\SYSTEM.H">\r
<Filter>DiffEngine</Filter>\r
</ClInclude>\r
#include "Ucs2Utf8.h"
#include "DiffContext.h" // FILE_SAME
#include "MovedLines.h"
-#include "GETOPT.H"
-#include "FNMATCH.H"
#include "coretools.h"
#include "MergeEditView.h"
#include "ChildFrm.h"
</FileConfiguration>\r
</File>\r
<File\r
- RelativePath="Common\WinClasses.cpp"\r
- >\r
- <FileConfiguration\r
- Name="UnicodeRelease|Win32"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="UnicodeRelease|x64"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="UnicodeDebug|Win32"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="UnicodeDebug|x64"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Debug|Win32"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Debug|x64"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Release|Win32"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="Release|x64"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="X64 Debug|Win32"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="X64 Debug|x64"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="0"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- BrowseInformation="1"\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="X64 Release|Win32"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- />\r
- </FileConfiguration>\r
- <FileConfiguration\r
- Name="X64 Release|x64"\r
- >\r
- <Tool\r
- Name="VCCLCompilerTool"\r
- Optimization="1"\r
- AdditionalIncludeDirectories=""\r
- PreprocessorDefinitions=""\r
- />\r
- </FileConfiguration>\r
- </File>\r
- <File\r
RelativePath="WMGotoDlg.cpp"\r
>\r
<FileConfiguration\r
>\r
</File>\r
<File\r
- RelativePath="Common\wclassdefines.h"\r
- >\r
- </File>\r
- <File\r
- RelativePath="Common\WinClasses.h"\r
- >\r
- </File>\r
- <File\r
RelativePath="WinMergeCmdLineParser.h"\r
>\r
</File>\r
/*
* config.h - pre-built version for MSDOS and NT.
*/
-#define DIRENT 1
#define HAVE_VPRINTF 1
#define RETSIGTYPE void
#define STDC_HEADERS 1
+++ /dev/null
-/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This library 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <errno.h>
-#include <fnmatch.h>
-#include <ctype.h>
-
-// reduce some noise produced with the MSVC compiler
-#if defined (_AFXDLL)
-#pragma warning(disable : 4131)
-#endif
-
-
-
-/* Comment out all this code if we are using the GNU C Library, and are not
- actually compiling the library itself. This code is part of the GNU C
- Library, but also included in many other GNU distributions. Compiling
- and linking in this code is a waste when using the GNU C library
- (especially if it is a shared library). Rather than having every GNU
- program understand `configure --with-gnu-libc' and omit the object files,
- it is simpler to just do this in the source for each such file. */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-#if !defined(__GNU_LIBRARY__) && !defined(STDC_HEADERS)
-extern int errno;
-#endif
-
-/* Match STRING against the filename pattern PATTERN, returning zero if
- it matches, nonzero if not. */
-int
-fnmatch (pattern, string, flags)
- const char *pattern;
- const char *string;
- int flags;
-{
- register const char *p = pattern, *n = string;
- register char c;
-
-/* Note that this evalutes C many times. */
-#define FOLD(c) (char)(((flags & FNM_CASEFOLD) && isupper (c)) ? tolower (c) : (c))
-
- while ((c = *p++) != '\0')
- {
- c = FOLD (c);
-
- switch (c)
- {
- case '?':
- if (*n == '\0')
- return FNM_NOMATCH;
- else if ((flags & FNM_FILE_NAME) && *n == '/')
- return FNM_NOMATCH;
- else if ((flags & FNM_PERIOD) && *n == '.' &&
- (n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
- return FNM_NOMATCH;
- break;
-
- case '\\':
- if (!(flags & FNM_NOESCAPE))
- {
- c = *p++;
- c = FOLD (c);
- }
- if (FOLD (*n) != c)
- return FNM_NOMATCH;
- break;
-
- case '*':
- if ((flags & FNM_PERIOD) && *n == '.' &&
- (n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
- return FNM_NOMATCH;
-
- for (c = *p++; c == '?' || c == '*'; c = *p++, ++n)
- if (((flags & FNM_FILE_NAME) && *n == '/') ||
- (c == '?' && *n == '\0'))
- return FNM_NOMATCH;
-
- if (c == '\0')
- return 0;
-
- {
- char c1 = (char)((!(flags & FNM_NOESCAPE) && c == '\\') ? *p : c);
- c1 = FOLD (c1);
- for (--p; *n != '\0'; ++n)
- if ((c == '[' || FOLD (*n) == c1) &&
- fnmatch (p, n, flags & ~FNM_PERIOD) == 0)
- return 0;
- return FNM_NOMATCH;
- }
-
- case '[':
- {
- /* Nonzero if the sense of the character class is inverted. */
- register int not;
-
- if (*n == '\0')
- return FNM_NOMATCH;
-
- if ((flags & FNM_PERIOD) && *n == '.' &&
- (n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
- return FNM_NOMATCH;
-
- not = (*p == '!' || *p == '^');
- if (not)
- ++p;
-
- c = *p++;
- for (;;)
- {
- register char cstart = c, cend = c;
-
- if (!(flags & FNM_NOESCAPE) && c == '\\')
- cstart = cend = *p++;
-
- cstart = cend = FOLD (cstart);
-
- if (c == '\0')
- /* [ (unterminated) loses. */
- return FNM_NOMATCH;
-
- c = *p++;
- c = FOLD (c);
-
- if ((flags & FNM_FILE_NAME) && c == '/')
- /* [/] can never match. */
- return FNM_NOMATCH;
-
- if (c == '-' && *p != ']')
- {
- cend = *p++;
- if (!(flags & FNM_NOESCAPE) && cend == '\\')
- cend = *p++;
- if (cend == '\0')
- return FNM_NOMATCH;
- cend = FOLD (cend);
-
- c = *p++;
- }
-
- if (FOLD (*n) >= cstart && FOLD (*n) <= cend)
- goto matched;
-
- if (c == ']')
- break;
- }
- if (!not)
- return FNM_NOMATCH;
- break;
-
- matched:;
- /* Skip the rest of the [...] that already matched. */
- while (c != ']')
- {
- if (c == '\0')
- /* [... (unterminated) loses. */
- return FNM_NOMATCH;
-
- c = *p++;
- if (!(flags & FNM_NOESCAPE) && c == '\\')
- /* XXX 1003.2d11 is unclear if this is right. */
- ++p;
- }
- if (not)
- return FNM_NOMATCH;
- }
- break;
-
- default:
- if (c != FOLD (*n))
- return FNM_NOMATCH;
- }
-
- ++n;
- }
-
- if (*n == '\0')
- return 0;
-
- if ((flags & FNM_LEADING_DIR) && *n == '/')
- /* The FNM_LEADING_DIR flag says that "foo*" matches "foobar/frobozz". */
- return 0;
-
- return FNM_NOMATCH;
-}
-
-#endif /* _LIBC or not __GNU_LIBRARY__. */
+++ /dev/null
-/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This library 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
-
-#ifndef _FNMATCH_H
-
-#define _FNMATCH_H 1
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
-#undef __P
-#define __P(args) args
-#else /* Not C++ or ANSI C. */
-#undef __P
-#define __P(args) ()
-/* We can get away without defining `const' here only because in this file
- it is used only inside the prototype for `fnmatch', which is elided in
- non-ANSI C where `const' is problematical. */
-#endif /* C++ or ANSI C. */
-
-/* Bits set in the FLAGS argument to `fnmatch'. */
-#define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */
-#define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */
-#define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */
-
-#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE)
-#define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */
-#define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */
-#define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */
-#endif
-
-/* Value returned by `fnmatch' if STRING does not match PATTERN. */
-#define FNM_NOMATCH 1
-
-/* Match STRING against the filename pattern PATTERN,
- returning zero if it matches, FNM_NOMATCH if not. */
-extern int fnmatch __P ((const char *__pattern, const char *__string,
- int __flags));
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* fnmatch.h */
+++ /dev/null
-/* Getopt for GNU.
- NOTE: getopt is now part of the C library, so if you don't know what
- "Keep this file name-space clean" means, talk to roland@gnu.ai.mit.edu
- before changing it!
-
- Copyright (C) 1987, 88, 89, 90, 91, 92, 1993
- Free Software Foundation, Inc.
-
- 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, 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, 675 Mass Ave, Cambridge, MA 02139, USA. */
-\f
-#ifdef HAVE_CONFIG_H
-#if defined (emacs) || defined (CONFIG_BROKETS)
-/* We use <config.h> instead of "config.h" so that a compilation
- using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h
- (which it would do because it found this file in $srcdir). */
-#include <config.h>
-#else
-#include "config.h"
-#endif
-#endif
-
-#ifndef __STDC__
-/* This is a separate conditional since some stdc systems
- reject `defined (const)'. */
-#ifndef const
-#define const
-#endif
-#endif
-
-/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>. */
-#ifndef _NO_PROTO
-#define _NO_PROTO
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
- actually compiling the library itself. This code is part of the GNU C
- Library, but also included in many other GNU distributions. Compiling
- and linking in this code is a waste when using the GNU C library
- (especially if it is a shared library). Rather than having every GNU
- program understand `configure --with-gnu-libc' and omit the object files,
- it is simpler to just do this in the source for each such file. */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-/* This needs to come after some library #include
- to get __GNU_LIBRARY__ defined. */
-#ifdef __GNU_LIBRARY__
-/* Don't include stdlib.h for non-GNU C libraries because some of them
- contain conflicting prototypes for getopt. */
-#include <stdlib.h>
-#endif /* GNU C library. */
-
-/* If GETOPT_COMPAT is defined, `+' as well as `--' can introduce a
- long-named option. Because this is not POSIX.2 compliant, it is
- being phased out. */
-/* #define GETOPT_COMPAT */
-
-/* This version of `getopt' appears to the caller like standard Unix `getopt'
- but it behaves differently for the user, since it allows the user
- to intersperse the options with the other arguments.
-
- As `getopt' works, it permutes the elements of ARGV so that,
- when it is done, all the options precede everything else. Thus
- all application programs are extended to handle flexible argument order.
-
- Setting the environment variable POSIXLY_CORRECT disables permutation.
- Then the behavior is completely standard.
-
- GNU application programs can use a third alternative mode in which
- they can distinguish the relative order of options and other arguments. */
-
-#include "getopt.h"
-
-/* For communication from `getopt' to the caller.
- When `getopt' finds an option that takes an argument,
- the argument value is returned here.
- Also, when `ordering' is RETURN_IN_ORDER,
- each non-option ARGV-element is returned here. */
-
-char *optarg = 0;
-
-/* Index in ARGV of the next element to be scanned.
- This is used for communication to and from the caller
- and for communication between successive calls to `getopt'.
-
- On entry to `getopt', zero means this is the first call; initialize.
-
- When `getopt' returns EOF, this is the index of the first of the
- non-option elements that the caller should itself scan.
-
- Otherwise, `optind' communicates from one call to the next
- how much of ARGV has been scanned so far. */
-
-/* XXX 1003.2 says this must be 1 before any call. */
-int optind = 0;
-
-/* The next char to be scanned in the option-element
- in which the last option character we returned was found.
- This allows us to pick up the scan where we left off.
-
- If this is zero, or a null string, it means resume the scan
- by advancing to the next ARGV-element. */
-
-static char *nextchar;
-
-/* Callers store zero here to inhibit the error message
- for unrecognized options. */
-
-int opterr = 1;
-
-/* Set to an option character which was unrecognized.
- This must be initialized on some systems to avoid linking in the
- system's own getopt implementation. */
-
-int optopt = '?';
-
-/* Describe how to deal with options that follow non-option ARGV-elements.
-
- If the caller did not specify anything,
- the default is REQUIRE_ORDER if the environment variable
- POSIXLY_CORRECT is defined, PERMUTE otherwise.
-
- REQUIRE_ORDER means don't recognize them as options;
- stop option processing when the first non-option is seen.
- This is what Unix does.
- This mode of operation is selected by either setting the environment
- variable POSIXLY_CORRECT, or using `+' as the first character
- of the list of option characters.
-
- PERMUTE is the default. We permute the contents of ARGV as we scan,
- so that eventually all the non-options are at the end. This allows options
- to be given in any order, even with programs that were not written to
- expect this.
-
- RETURN_IN_ORDER is an option available to programs that were written
- to expect options and other ARGV-elements in any order and that care about
- the ordering of the two. We describe each non-option ARGV-element
- as if it were the argument of an option with character code 1.
- Using `-' as the first character of the list of option characters
- selects this mode of operation.
-
- The special argument `--' forces an end of option-scanning regardless
- of the value of `ordering'. In the case of RETURN_IN_ORDER, only
- `--' can cause `getopt' to return EOF with `optind' != ARGC. */
-
-static enum
-{
- REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
-} ordering;
-\f
-#ifdef __GNU_LIBRARY__
-/* We want to avoid inclusion of string.h with non-GNU libraries
- because there are many ways it can cause trouble.
- On some systems, it contains special magic macros that don't work
- in GCC. */
-#include <string.h>
-#define my_index strchr
-#else
-
-/* Avoid depending on library functions or files
- whose names are inconsistent. */
-
-char *getenv ();
-
-static char *
-my_index (str, chr)
- const char *str;
- int chr;
-{
- while (*str)
- {
- if (*str == chr)
- return (char *) str;
- str++;
- }
- return 0;
-}
-
-/* If using GCC, we can safely declare strlen this way.
- If not using GCC, it is ok not to declare it.
- (Supposedly there are some machines where it might get a warning,
- but changing this conditional to __STDC__ is too risky.) */
-#ifdef __GNUC__
-#ifdef IN_GCC
-#include "gstddef.h"
-#else
-#include <stddef.h>
-#endif
-extern size_t strlen (const char *);
-#endif
-
-#endif /* GNU C library. */
-\f
-/* Handle permutation of arguments. */
-
-/* Describe the part of ARGV that contains non-options that have
- been skipped. `first_nonopt' is the index in ARGV of the first of them;
- `last_nonopt' is the index after the last of them. */
-
-static int first_nonopt;
-static int last_nonopt;
-
-/* Exchange two adjacent subsequences of ARGV.
- One subsequence is elements [first_nonopt,last_nonopt)
- which contains all the non-options that have been skipped so far.
- The other is elements [last_nonopt,optind), which contains all
- the options processed since those non-options were skipped.
-
- `first_nonopt' and `last_nonopt' are relocated so that they describe
- the new indices of the non-options in ARGV after they are moved. */
-
-static void
-exchange (argv)
- char **argv;
-{
- int bottom = first_nonopt;
- int middle = last_nonopt;
- int top = optind;
- char *tem;
-
- /* Exchange the shorter segment with the far end of the longer segment.
- That puts the shorter segment into the right place.
- It leaves the longer segment in the right place overall,
- but it consists of two parts that need to be swapped next. */
-
- while (top > middle && middle > bottom)
- {
- if (top - middle > middle - bottom)
- {
- /* Bottom segment is the short one. */
- int len = middle - bottom;
- register int i;
-
- /* Swap it with the top part of the top segment. */
- for (i = 0; i < len; i++)
- {
- tem = argv[bottom + i];
- argv[bottom + i] = argv[top - (middle - bottom) + i];
- argv[top - (middle - bottom) + i] = tem;
- }
- /* Exclude the moved bottom segment from further swapping. */
- top -= len;
- }
- else
- {
- /* Top segment is the short one. */
- int len = top - middle;
- register int i;
-
- /* Swap it with the bottom part of the bottom segment. */
- for (i = 0; i < len; i++)
- {
- tem = argv[bottom + i];
- argv[bottom + i] = argv[middle + i];
- argv[middle + i] = tem;
- }
- /* Exclude the moved top segment from further swapping. */
- bottom += len;
- }
- }
-
- /* Update records for the slots the non-options now occupy. */
-
- first_nonopt += (optind - last_nonopt);
- last_nonopt = optind;
-}
-\f
-/* Scan elements of ARGV (whose length is ARGC) for option characters
- given in OPTSTRING.
-
- If an element of ARGV starts with '-', and is not exactly "-" or "--",
- then it is an option element. The characters of this element
- (aside from the initial '-') are option characters. If `getopt'
- is called repeatedly, it returns successively each of the option characters
- from each of the option elements.
-
- If `getopt' finds another option character, it returns that character,
- updating `optind' and `nextchar' so that the next call to `getopt' can
- resume the scan with the following option character or ARGV-element.
-
- If there are no more option characters, `getopt' returns `EOF'.
- Then `optind' is the index in ARGV of the first ARGV-element
- that is not an option. (The ARGV-elements have been permuted
- so that those that are not options now come last.)
-
- OPTSTRING is a string containing the legitimate option characters.
- If an option character is seen that is not listed in OPTSTRING,
- return '?' after printing an error message. If you set `opterr' to
- zero, the error message is suppressed but we still return '?'.
-
- If a char in OPTSTRING is followed by a colon, that means it wants an arg,
- so the following text in the same ARGV-element, or the text of the following
- ARGV-element, is returned in `optarg'. Two colons mean an option that
- wants an optional arg; if there is text in the current ARGV-element,
- it is returned in `optarg', otherwise `optarg' is set to zero.
-
- If OPTSTRING starts with `-' or `+', it requests different methods of
- handling the non-option ARGV-elements.
- See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above.
-
- Long-named options begin with `--' instead of `-'.
- Their names may be abbreviated as long as the abbreviation is unique
- or is an exact match for some defined option. If they have an
- argument, it follows the option name in the same ARGV-element, separated
- from the option name by a `=', or else the in next ARGV-element.
- When `getopt' finds a long-named option, it returns 0 if that option's
- `flag' field is nonzero, the value of the option's `val' field
- if the `flag' field is zero.
-
- The elements of ARGV aren't really const, because we permute them.
- But we pretend they're const in the prototype to be compatible
- with other systems.
-
- LONGOPTS is a vector of `struct option' terminated by an
- element containing a name which is zero.
-
- LONGIND returns the index in LONGOPT of the long-named option found.
- It is only valid when a long-named option has been found by the most
- recent call.
-
- If LONG_ONLY is nonzero, '-' as well as '--' can introduce
- long-named options. */
-
-int
-_getopt_internal (argc, argv, optstring, longopts, longind, long_only)
- int argc;
- char *const *argv;
- const char *optstring;
- const struct option *longopts;
- int *longind;
- int long_only;
-{
- int option_index;
-
- optarg = 0;
-
- /* Initialize the internal data when the first call is made.
- Start processing options with ARGV-element 1 (since ARGV-element 0
- is the program name); the sequence of previously skipped
- non-option ARGV-elements is empty. */
-
- if (optind == 0)
- {
- first_nonopt = last_nonopt = optind = 1;
-
- nextchar = NULL;
-
- /* Determine how to handle the ordering of options and nonoptions. */
-
- if (optstring[0] == '-')
- {
- ordering = RETURN_IN_ORDER;
- ++optstring;
- }
- else if (optstring[0] == '+')
- {
- ordering = REQUIRE_ORDER;
- ++optstring;
- }
- else if (getenv ("POSIXLY_CORRECT") != NULL)
- ordering = REQUIRE_ORDER;
- else
- ordering = PERMUTE;
- }
-
- if (nextchar == NULL || *nextchar == '\0')
- {
- if (ordering == PERMUTE)
- {
- /* If we have just processed some options following some non-options,
- exchange them so that the options come first. */
-
- if (first_nonopt != last_nonopt && last_nonopt != optind)
- exchange ((char **) argv);
- else if (last_nonopt != optind)
- first_nonopt = optind;
-
- /* Now skip any additional non-options
- and extend the range of non-options previously skipped. */
-
- while (optind < argc
- && (argv[optind][0] != '-' || argv[optind][1] == '\0')
-#ifdef GETOPT_COMPAT
- && (longopts == NULL
- || argv[optind][0] != '+' || argv[optind][1] == '\0')
-#endif /* GETOPT_COMPAT */
- )
- optind++;
- last_nonopt = optind;
- }
-
- /* Special ARGV-element `--' means premature end of options.
- Skip it like a null option,
- then exchange with previous non-options as if it were an option,
- then skip everything else like a non-option. */
-
- if (optind != argc && !strcmp (argv[optind], "--"))
- {
- optind++;
-
- if (first_nonopt != last_nonopt && last_nonopt != optind)
- exchange ((char **) argv);
- else if (first_nonopt == last_nonopt)
- first_nonopt = optind;
- last_nonopt = argc;
-
- optind = argc;
- }
-
- /* If we have done all the ARGV-elements, stop the scan
- and back over any non-options that we skipped and permuted. */
-
- if (optind == argc)
- {
- /* Set the next-arg-index to point at the non-options
- that we previously skipped, so the caller will digest them. */
- if (first_nonopt != last_nonopt)
- optind = first_nonopt;
- return EOF;
- }
-
- /* If we have come to a non-option and did not permute it,
- either stop the scan or describe it to the caller and pass it by. */
-
- if ((argv[optind][0] != '-' || argv[optind][1] == '\0')
-#ifdef GETOPT_COMPAT
- && (longopts == NULL
- || argv[optind][0] != '+' || argv[optind][1] == '\0')
-#endif /* GETOPT_COMPAT */
- )
- {
- if (ordering == REQUIRE_ORDER)
- return EOF;
- optarg = argv[optind++];
- return 1;
- }
-
- /* We have found another option-ARGV-element.
- Start decoding its characters. */
-
- nextchar = (argv[optind] + 1
- + (longopts != NULL && argv[optind][1] == '-'));
- }
-
- if (longopts != NULL
- && ((argv[optind][0] == '-'
- && (argv[optind][1] == '-' || long_only))
-#ifdef GETOPT_COMPAT
- || argv[optind][0] == '+'
-#endif /* GETOPT_COMPAT */
- ))
- {
- const struct option *p;
- char *s = nextchar;
- int exact = 0;
- int ambig = 0;
- const struct option *pfound = NULL;
- int indfound;
-
- while (*s && *s != '=')
- s++;
-
- /* Test all options for either exact match or abbreviated matches. */
- for (p = longopts, option_index = 0; p->name;
- p++, option_index++)
- if (!strncmp (p->name, nextchar, s - nextchar))
- {
- if (s - nextchar == strlen (p->name))
- {
- /* Exact match found. */
- pfound = p;
- indfound = option_index;
- exact = 1;
- break;
- }
- else if (pfound == NULL)
- {
- /* First nonexact match found. */
- pfound = p;
- indfound = option_index;
- }
- else
- /* Second nonexact match found. */
- ambig = 1;
- }
-
- if (ambig && !exact)
- {
- if (opterr)
- fprintf (stderr, "%s: option `%s' is ambiguous\n",
- argv[0], argv[optind]);
- nextchar += strlen (nextchar);
- optind++;
- return '?';
- }
-
- if (pfound != NULL)
- {
- option_index = indfound;
- optind++;
- if (*s)
- {
- /* Don't test has_arg with >, because some C compilers don't
- allow it to be used on enums. */
- if (pfound->has_arg)
- optarg = s + 1;
- else
- {
- if (opterr)
- {
- if (argv[optind - 1][1] == '-')
- /* --option */
- fprintf (stderr,
- "%s: option `--%s' doesn't allow an argument\n",
- argv[0], pfound->name);
- else
- /* +option or -option */
- fprintf (stderr,
- "%s: option `%c%s' doesn't allow an argument\n",
- argv[0], argv[optind - 1][0], pfound->name);
- }
- nextchar += strlen (nextchar);
- return '?';
- }
- }
- else if (pfound->has_arg == 1)
- {
- if (optind < argc)
- optarg = argv[optind++];
- else
- {
- if (opterr)
- fprintf (stderr, "%s: option `%s' requires an argument\n",
- argv[0], argv[optind - 1]);
- nextchar += strlen (nextchar);
- return optstring[0] == ':' ? ':' : '?';
- }
- }
- nextchar += strlen (nextchar);
- if (longind != NULL)
- *longind = option_index;
- if (pfound->flag)
- {
- *(pfound->flag) = pfound->val;
- return 0;
- }
- return pfound->val;
- }
- /* Can't find it as a long option. If this is not getopt_long_only,
- or the option starts with '--' or is not a valid short
- option, then it's an error.
- Otherwise interpret it as a short option. */
- if (!long_only || argv[optind][1] == '-'
-#ifdef GETOPT_COMPAT
- || argv[optind][0] == '+'
-#endif /* GETOPT_COMPAT */
- || my_index (optstring, *nextchar) == NULL)
- {
- if (opterr)
- {
- if (argv[optind][1] == '-')
- /* --option */
- fprintf (stderr, "%s: unrecognized option `--%s'\n",
- argv[0], nextchar);
- else
- /* +option or -option */
- fprintf (stderr, "%s: unrecognized option `%c%s'\n",
- argv[0], argv[optind][0], nextchar);
- }
- nextchar = (char *) "";
- optind++;
- return '?';
- }
- }
-
- /* Look at and handle the next option-character. */
-
- {
- char c = *nextchar++;
- char *temp = my_index (optstring, c);
-
- /* Increment `optind' when we start to process its last character. */
- if (*nextchar == '\0')
- ++optind;
-
- if (temp == NULL || c == ':')
- {
- if (opterr)
- {
-#if 0
- if (c < 040 || c >= 0177)
- fprintf (stderr, "%s: unrecognized option, character code 0%o\n",
- argv[0], c);
- else
- fprintf (stderr, "%s: unrecognized option `-%c'\n", argv[0], c);
-#else
- /* 1003.2 specifies the format of this message. */
- fprintf (stderr, "%s: illegal option -- %c\n", argv[0], c);
-#endif
- }
- optopt = c;
- return '?';
- }
- if (temp[1] == ':')
- {
- if (temp[2] == ':')
- {
- /* This is an option that accepts an argument optionally. */
- if (*nextchar != '\0')
- {
- optarg = nextchar;
- optind++;
- }
- else
- optarg = 0;
- nextchar = NULL;
- }
- else
- {
- /* This is an option that requires an argument. */
- if (*nextchar != '\0')
- {
- optarg = nextchar;
- /* If we end this ARGV-element by taking the rest as an arg,
- we must advance to the next element now. */
- optind++;
- }
- else if (optind == argc)
- {
- if (opterr)
- {
-#if 0
- fprintf (stderr, "%s: option `-%c' requires an argument\n",
- argv[0], c);
-#else
- /* 1003.2 specifies the format of this message. */
- fprintf (stderr, "%s: option requires an argument -- %c\n",
- argv[0], c);
-#endif
- }
- optopt = c;
- if (optstring[0] == ':')
- c = ':';
- else
- c = '?';
- }
- else
- /* We already incremented `optind' once;
- increment it again when taking next ARGV-elt as argument. */
- optarg = argv[optind++];
- nextchar = NULL;
- }
- }
- return c;
- }
-}
-
-int
-getopt (argc, argv, optstring)
- int argc;
- char *const *argv;
- const char *optstring;
-{
- return _getopt_internal (argc, argv, optstring,
- (const struct option *) 0,
- (int *) 0,
- 0);
-}
-
-#endif /* _LIBC or not __GNU_LIBRARY__. */
-\f
-#ifdef TEST
-
-/* Compile with -DTEST to make an executable for use in testing
- the above definition of `getopt'. */
-
-int
-main (argc, argv)
- int argc;
- char **argv;
-{
- int c;
- int digit_optind = 0;
-
- while (1)
- {
- int this_option_optind = optind ? optind : 1;
-
- c = getopt (argc, argv, "abc:d:0123456789");
- if (c == EOF)
- break;
-
- switch (c)
- {
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- if (digit_optind != 0 && digit_optind != this_option_optind)
- printf ("digits occur in two different argv-elements.\n");
- digit_optind = this_option_optind;
- printf ("option %c\n", c);
- break;
-
- case 'a':
- printf ("option a\n");
- break;
-
- case 'b':
- printf ("option b\n");
- break;
-
- case 'c':
- printf ("option c with value `%s'\n", optarg);
- break;
-
- case '?':
- break;
-
- default:
- printf ("?? getopt returned character code 0%o ??\n", c);
- }
- }
-
- if (optind < argc)
- {
- printf ("non-option ARGV-elements: ");
- while (optind < argc)
- printf ("%s ", argv[optind++]);
- printf ("\n");
- }
-
- exit (0);
-}
-
-#endif /* TEST */
+++ /dev/null
-/* Declarations for getopt.
- Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
-
- 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, 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, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#ifndef _GETOPT_H
-#define _GETOPT_H 1
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* For communication from `getopt' to the caller.
- When `getopt' finds an option that takes an argument,
- the argument value is returned here.
- Also, when `ordering' is RETURN_IN_ORDER,
- each non-option ARGV-element is returned here. */
-
-extern char *optarg;
-
-/* Index in ARGV of the next element to be scanned.
- This is used for communication to and from the caller
- and for communication between successive calls to `getopt'.
-
- On entry to `getopt', zero means this is the first call; initialize.
-
- When `getopt' returns EOF, this is the index of the first of the
- non-option elements that the caller should itself scan.
-
- Otherwise, `optind' communicates from one call to the next
- how much of ARGV has been scanned so far. */
-
-extern int optind;
-
-/* Callers store zero here to inhibit the error message `getopt' prints
- for unrecognized options. */
-
-extern int opterr;
-
-/* Set to an option character which was unrecognized. */
-
-extern int optopt;
-
-/* Describe the long-named options requested by the application.
- The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
- of `struct option' terminated by an element containing a name which is
- zero.
-
- The field `has_arg' is:
- no_argument (or 0) if the option does not take an argument,
- required_argument (or 1) if the option requires an argument,
- optional_argument (or 2) if the option takes an optional argument.
-
- If the field `flag' is not NULL, it points to a variable that is set
- to the value given in the field `val' when the option is found, but
- left unchanged if the option is not found.
-
- To have a long-named option do something other than set an `int' to
- a compiled-in constant, such as set a value from `optarg', set the
- option's `flag' field to zero and its `val' field to a nonzero
- value (the equivalent single-letter option character, if there is
- one). For long options that have a zero `flag' field, `getopt'
- returns the contents of the `val' field. */
-
-struct option
-{
-#if __STDC__
- const char *name;
-#else
- char *name;
-#endif
- /* has_arg can't be an enum because some compilers complain about
- type mismatches in all the code that assumes it is an int. */
- int has_arg;
- int *flag;
- int val;
-};
-
-/* Names for the values of the `has_arg' field of `struct option'. */
-
-#define no_argument 0
-#define required_argument 1
-#define optional_argument 2
-
-#if __STDC__
-#if defined(__GNU_LIBRARY__)
-/* Many other libraries have conflicting prototypes for getopt, with
- differences in the consts, in stdlib.h. To avoid compilation
- errors, only prototype getopt for the GNU C library. */
-extern int getopt (int argc, char *const *argv, const char *shortopts);
-#else /* not __GNU_LIBRARY__ */
-extern int getopt ();
-#endif /* not __GNU_LIBRARY__ */
-extern int getopt_long (int argc, char *const *argv, const char *shortopts,
- const struct option *longopts, int *longind);
-extern int getopt_long_only (int argc, char *const *argv,
- const char *shortopts,
- const struct option *longopts, int *longind);
-
-/* Internal only. Users should not call this directly. */
-extern int _getopt_internal (int argc, char *const *argv,
- const char *shortopts,
- const struct option *longopts, int *longind,
- int long_only);
-#else /* not __STDC__ */
-extern int getopt ();
-extern int getopt_long ();
-extern int getopt_long_only ();
-
-extern int _getopt_internal ();
-#endif /* not __STDC__ */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _GETOPT_H */
+++ /dev/null
-/* getopt_long and getopt_long_only entry points for GNU getopt.
- Copyright (C) 1987, 88, 89, 90, 91, 92, 1993
- Free Software Foundation, Inc.
-
- 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, 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, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-\f
-#ifdef HAVE_CONFIG_H
-#if defined (emacs) || defined (CONFIG_BROKETS)
-/* We use <config.h> instead of "config.h" so that a compilation
- using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h
- (which it would do because it found this file in $srcdir). */
-#include <config.h>
-#else
-#include "config.h"
-#endif
-#endif
-
-#include "getopt.h"
-
-#ifndef __STDC__
-/* This is a separate conditional since some stdc systems
- reject `defined (const)'. */
-#ifndef const
-#define const
-#endif
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
- actually compiling the library itself. This code is part of the GNU C
- Library, but also included in many other GNU distributions. Compiling
- and linking in this code is a waste when using the GNU C library
- (especially if it is a shared library). Rather than having every GNU
- program understand `configure --with-gnu-libc' and omit the object files,
- it is simpler to just do this in the source for each such file. */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-/* This needs to come after some library #include
- to get __GNU_LIBRARY__ defined. */
-#ifdef __GNU_LIBRARY__
-#include <stdlib.h>
-#else
-char *getenv ();
-#endif
-
-#ifndef NULL
-#define NULL 0
-#endif
-
-int
-getopt_long (argc, argv, options, long_options, opt_index)
- int argc;
- char *const *argv;
- const char *options;
- const struct option *long_options;
- int *opt_index;
-{
- return _getopt_internal (argc, argv, options, long_options, opt_index, 0);
-}
-
-/* Like getopt_long, but '-' as well as '--' can indicate a long option.
- If an option that starts with '-' (not '--') doesn't match a long option,
- but does match a short option, it is parsed as a short option
- instead. */
-
-int
-getopt_long_only (argc, argv, options, long_options, opt_index)
- int argc;
- char *const *argv;
- const char *options;
- const struct option *long_options;
- int *opt_index;
-{
- return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
-}
-
-
-#endif /* _LIBC or not __GNU_LIBRARY__. */
-\f
-#ifdef TEST
-
-#include <stdio.h>
-
-int
-main (argc, argv)
- int argc;
- char **argv;
-{
- int c;
- int digit_optind = 0;
-
- while (1)
- {
- int this_option_optind = optind ? optind : 1;
- int option_index = 0;
- static struct option long_options[] =
- {
- {"add", 1, 0, 0},
- {"append", 0, 0, 0},
- {"delete", 1, 0, 0},
- {"verbose", 0, 0, 0},
- {"create", 0, 0, 0},
- {"file", 1, 0, 0},
- {0, 0, 0, 0}
- };
-
- c = getopt_long (argc, argv, "abc:d:0123456789",
- long_options, &option_index);
- if (c == EOF)
- break;
-
- switch (c)
- {
- case 0:
- printf ("option %s", long_options[option_index].name);
- if (optarg)
- printf (" with arg %s", optarg);
- printf ("\n");
- break;
-
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- if (digit_optind != 0 && digit_optind != this_option_optind)
- printf ("digits occur in two different argv-elements.\n");
- digit_optind = this_option_optind;
- printf ("option %c\n", c);
- break;
-
- case 'a':
- printf ("option a\n");
- break;
-
- case 'b':
- printf ("option b\n");
- break;
-
- case 'c':
- printf ("option c with value `%s'\n", optarg);
- break;
-
- case 'd':
- printf ("option d with value `%s'\n", optarg);
- break;
-
- case '?':
- break;
-
- default:
- printf ("?? getopt returned character code 0%o ??\n", c);
- }
- }
-
- if (optind < argc)
- {
- printf ("non-option ARGV-elements: ");
- while (optind < argc)
- printf ("%s ", argv[optind++]);
- printf ("\n");
- }
-
- exit (0);
-}
-
-#endif /* TEST */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
+++ /dev/null
-/*
- * dirent.c - POSIX directory access routines for MS-DOS, OS/2 and Windows/NT
- *
- * Author: Frank Whaley (few@autodesk.com)
- *
- * Copyright Frank Whaley 1993. All rights reserved.
- *
- * Permission to use, copy, modify, distribute, and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appears in all copies of the
- * source code. The name of the author may not be used to endorse or
- * promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * CAVEATS:
- * The associated 'dirent.h' file should be copied into your system
- * include directory if the '#include <dirent.h>' syntax will be used,
- * otherwise a '-I.' switch must be added to command lines.
- *
- * This code was originally developed with Turbo C, and continues to
- * use TC's function and structure names. Numerous macros make the
- * code palatable to MSC 5.1/6.0 for MS-DOS and OS/2. The macros
- * depend on four defines: __TURBOC__, __MSC__, __MSDOS__, and __OS2__.
- * The TC and BC compilers provide __TURBOC__ and __MSDOS__ as
- * appropriate; MSC doesn't provide any of these flags so they must
- * be given on the command line. Sample commands for building test
- * programs (see '#ifdef TEST' below):
- * tcc -DTEST dirent.c
- * bcc -DTEST dirent.c
- * cl -DTEST -D__MSC__ -D__MSDOS__ dirent.c
- * cl -Lp -DTEST -D__MSC__ -D__OS2__ dirent.c
- * cl -DTEST -D__MSC__ -D__NT__ dirent.c
- *
- * This code reads an entire directory into memory, and thus is not
- * a good choice for scanning very large directories. The maximum
- * number of names allowed is controlled by MAXNAMES, defined below.
- * This value is used to allocate an array of pointers, so making it
- * ridiculously large may cause the code to fail silently. The array
- * of pointers could be realloc()'ed in the loadDir() function, but
- * this can be dangerous with some 'weak' memory allocation packages.
- *
- * POSIX requires that the rewinddir() function re-scan the directory,
- * so this code must preserve the original directory name. If the
- * name given is a relative path (".", "..", etc.) and the current
- * directory is changed between opendir() and rewinddir(), a different
- * directory will be scanned by rewinddir(). (The directory name
- * could be "qualified" by opendir(), but this process yields unusable
- * names for network drives).
- *
- * This code provides only file names, as that is all that is required
- * by POSIX. Considerable other information is available from the
- * MS-DOS and OS/2 directory search functions. This package should not
- * be considered as a general-purpose directory scanner, but rather as
- * a tool to simplify porting other programs.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <io.h>
-#include <string.h>
-#include <dirent.h>
-
-#define MAXNAMES 1024 /* max names in dir list */
-#define MAXLEN 260 /* max len of any path/filename */
-
-#define NULLP(type) ((type *)0) /* readability macro */
-
-#ifdef __TURBOC__
-#include <alloc.h>
-#include <dir.h>
-#include <mem.h>
-typedef struct ffblk FIND_T;
-#define findclose(f)
-#define FA_RDONLY 0x01
-#define FA_HIDDEN 0x02
-#define FA_SYSTEM 0x04
-#define FA_LABEL 0x08
-#define FA_DIREC 0x10
-#define FA_ARCH 0x20
-#endif /*__TURBOC__*/
-
-#if defined(__MSC__) && defined(__MSDOS__)
-#include <dos.h>
-#include <malloc.h>
-#include <memory.h>
-typedef struct find_t FIND_T;
-#define findfirst(n,f,a) _dos_findfirst(n,a,f)
-#define findnext(f) _dos_findnext(f)
-#define findclose(f)
-#define ff_name name
-#define FA_RDONLY _A_RDONLY
-#define FA_HIDDEN _A_HIDDEN
-#define FA_SYSTEM _A_SYSTEM
-#define FA_LABEL _A_VOLID
-#define FA_DIREC _A_SUBDIR
-#define FA_ARCH _A_ARCH
-#endif /*__MSC__&&__MSDOS__*/
-
-#if defined(__MSC__) && defined(__OS2__)
-#define INCL_DOS
-#include <os2.h>
-#include <malloc.h>
-#include <memory.h>
-typedef struct
-{
- HDIR ft_handle;
- FILEFINDBUF ft_ffb;
- int ft_count;
-} FIND_T;
-#define findfirst(n,f,a) ((f)->ft_handle=0xFFFF,(f)->ft_count=1,\
- DosFindFirst(n,&(f)->ft_handle,a,\
- &(f)->ft_ffb,sizeof((f)->ft_ffb),\
- &(f)->ft_count,0L))
-#define findnext(f) DosFindNext((f)->ft_handle,&(f)->ft_ffb,\
- sizeof((f)->ft_ffb),&(f)->ft_count)
-#define findclose(f) DosFindClose((f)->ft_handle);
-#define ff_name ft_ffb.achName
-#define FA_RDONLY 0x01
-#define FA_HIDDEN 0x02
-#define FA_SYSTEM 0x04
-#define FA_LABEL 0x08
-#define FA_DIREC 0x10
-#define FA_ARCH 0x20
-#endif /*__MSC__&&__OS2__*/
-
-#if defined(__MSC__) && defined(__NT__)
-#include <windows.h>
-typedef struct
-{
- long ft_hdl;
- struct _finddata_t ft_ffb;
-} FIND_T;
-
-#define findfirst(n,f,a) (((f)->ft_hdl=_findfirst(n,&(f)->ft_ffb))==-1)
-#define findnext(f) _findnext((f)->ft_hdl,&(f)->ft_ffb)
-#define findclose(f) _findclose((f)->ft_hdl)
-#define ff_name ft_ffb.name
-#define FA_RDONLY 0x01
-#define FA_HIDDEN 0x02
-#define FA_SYSTEM 0x04
-#define FA_LABEL 0x08
-#define FA_DIREC 0x10
-#define FA_ARCH 0x20
-#endif /*__MSC__&&__NT__*/
-
- /* mask for all interesting files */
-#define ALL (FA_RDONLY+FA_HIDDEN+FA_SYSTEM+FA_DIREC)
-
-typedef struct __DIRENT
-{
- char path[MAXLEN]; /* directory name */
- char **names; /* array of ptrs to names */
- int count; /* number of entries */
- int current; /* current entry */
-} DIRENT;
-
- /* forward declarations */
-static int loadDir(DIRENT *dir);
-
-/*
--* opendir - open a directory for reading
- */
- DIR *
-opendir(char const *name)
-{
- DIRENT *dir;
-
- /* worth looking at ?? */
- if ( (name == NULL) || (*name == '\0') )
- {
- errno = ENOENT;
- return ( NULLP(DIR) );
- }
-
- /* get space for DIRENT struct */
- if ( (dir = malloc(sizeof(DIRENT))) == NULLP(DIRENT) )
- {
- errno = ENOMEM;
- return ( NULLP(DIR) );
- }
-
- /* load the names */
- strcpy(dir->path, name);
- if ( !loadDir(dir) )
- {
- free(dir);
- /* errno already set */
- return ( NULLP(DIR) );
- }
-
- return ( (DIR *)dir );
-}
-
-/*
--* closedir - close a directory
- */
- int
-closedir(DIR *dir)
-{
- char **names = ((DIRENT *)dir)->names;
- int count = ((DIRENT *)dir)->count;
-
- while ( count )
- free(names[--count]);
- free(names);
- free(dir);
- return ( 0 );
-}
-
-/*
--* readdir - return ptr to next directory entry
- */
- struct dirent *
-readdir(DIR *dir)
-{
- static struct dirent dp;
- DIRENT *de = (DIRENT *)dir;
-
- if ( de->current >= de->count )
- return ( NULLP(struct dirent) );
-
- strcpy(dp.d_name, de->names[de->current++]);
- return ( &dp );
-}
-
-/*
--* rewinddir - rewind directory (re-open)
- */
- void
-rewinddir(DIR *dir)
-{
- char **names = ((DIRENT *)dir)->names;
- int count = ((DIRENT *)dir)->count;
-
- /* free existing names */
- while ( count )
- free(names[--count]);
- free(names);
- /* reload */
- loadDir((DIRENT *)dir);
-}
-
-/*
--* __seekdir - change directory position
- */
- void
-__seekdir(DIR *dir, long off)
-{
- DIRENT *de = (DIRENT *)dir;
-
- if ( (off < 0) || (off > de->count) )
- return;
- de->current = (int)off;
-}
-
-/*
--* __telldir - return current directory position
- */
- long
-__telldir(DIR *dir)
-{
- return ( (long)((DIRENT *)dir)->current );
-}
-
- /* LOCAL ROUTINES */
-/* load a directory list */
- int
-loadDir(DIRENT *dir)
-{
- char pattern[MAXLEN];
- char **names;
- int count = 0;
- int mode;
- FIND_T ff;
-
- /* do we have just a drive name ?? */
- if ( (dir->path[1] == ':') && (dir->path[2] == '\0') )
- strcat(dir->path, ".");
-
- /* is it a directory ?? */
-#ifdef __MSDOS__
-#ifdef __TURBOC__
- if ( ((mode = _chmod(dir->path, 0)) < 0) ||
-#endif /*__TURBOC__*/
-#ifdef __MSC__
- if ( _dos_getfileattr(dir->path, &mode) ||
-#endif /*__MSC__*/
-#endif /*__MSDOS__*/
-#ifdef __OS2__
- if ( DosQFileMode(dir->path, &mode, 0L) ||
-#endif /*__OS2__*/
-#ifdef __NT__
- if ( ((mode = GetFileAttributesA(dir->path)) == 0xFFFFFFFF) ||
-#endif /*__NT__*/
- !(mode & FA_DIREC) )
- {
- errno = ENOTDIR;
- return ( 0 );
- }
-
- /* get space for array of ptrs */
- if ( (names = (char **)malloc(MAXNAMES * sizeof(char *))) ==
- NULLP(char *) )
- {
- errno = ENOMEM;
- return ( 0 );
- }
-
- /* build pattern string */
- strcpy(pattern, dir->path);
- if ( strchr("\\/:", pattern[strlen(pattern) - 1]) == NULL )
- strcat(pattern, "/");
- strcat(pattern, "*.*");
-
- if ( !findfirst(pattern, &ff, ALL) )
- do
- {
- /* add name if not "." or ".." */
- if ( ff.ff_name[0] != '.' )
- {
- /* make a copy of the name */
- if ( (names[count] = _strdup(ff.ff_name))
- == NULL )
- {
- /* free all if error (out of mem) */
- while ( count )
- free(names[--count]);
- free(names);
- errno = ENOMEM;
- return ( 0 );
- }
- count++;
- }
- }
- while ( !findnext(&ff) && (count < MAXNAMES) );
- findclose(&ff);
- dir->names = names;
- dir->count = count;
- dir->current = 0;
- return ( 1 );
-}
-
-#ifdef TEST
- int
-main(int argc, char *argv[])
-{
- DIR *dir;
- struct dirent *d;
- long pos;
-
- /* check arguments */
- if ( argc != 2 )
- {
- fprintf(stderr, "Usage: dirent <directory>\n");
- return ( 1 );
- }
-
- /* try to open the given directory */
- if ( (dir = opendir(argv[1])) == (DIR *)0 )
- {
- fprintf(stderr, "cannot open %s\n", argv[1]);
- return ( 1 );
- }
-
- /* walk the directory once forward */
- while ( (d = readdir(dir)) != NULLP(struct dirent) )
- printf("%s\n", d->d_name);
-
- /* rewind */
- rewinddir(dir);
-
- /* scan to the end again */
- while ( (d = readdir(dir)) != NULLP(struct dirent) )
- ;
-
- /* seek backwards to beginning */
- for ( pos = __telldir(dir); pos >= 0; pos-- )
- {
- __seekdir(dir, pos);
- printf("%ld=%ld\n", __telldir(dir), pos);
- }
-
- /* close and exit */
- printf("closedir() returns %d\n", closedir(dir));
- return ( 0 );
-}
-#endif /*TEST*/
-
-/* END of dirent.c */
+++ /dev/null
-/*
- * dirent.h - POSIX directory access routines for MS-DOS, OS/2 and Windows/NT
- *
- * Author: Frank Whaley (few@autodesk.com)
- *
- * Copyright Frank Whaley 1993. All rights reserved.
- *
- * Permission to use, copy, modify, distribute, and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appears in all copies of the
- * source code. The name of the author may not be used to endorse or
- * promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Read the "CAVEATS" section in dirent.c.
- */
-
-#ifndef __DIRENT_H
-#define __DIRENT_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if defined(__OS2__) || defined(__NT__)
-#define d_MAXNAMLEN 255
-#else
-#define d_MAXNAMLEN 12
-#endif
-
-typedef struct __DIRENT DIR;
-
-struct dirent
-{
- char d_name[d_MAXNAMLEN + 1];
-};
-
-DIR *opendir(char const *__name);
-struct dirent *readdir(DIR *__dir);
-void rewinddir(DIR *__dir);
-int closedir(DIR *__dir);
-
-void __seekdir(DIR *__dir, long __pos);
-long __telldir(DIR *__dir);
-
-#ifndef _POSIX_SOURCE
-#define seekdir __seekdir
-#define telldir __telldir
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /*__DIRENT_H*/
-
-/* END of dirent.h */
#include "stdafx.h"
#define GDIFF_MAIN
#include "diff.h"
-#include "getopt.h"
-#include "fnmatch.h"
#include "io.h"
#include "diffwrapper.h"
#define STAT_BLOCKSIZE(s) (8 * 1024)
#endif
-#if DIRENT || defined (_POSIX_VERSION)
-#include <dirent.h>
-#else /* ! (DIRENT || defined (_POSIX_VERSION)) */
-#if SYSNDIR
-#include <sys/ndir.h>
-#else
-#if SYSDIR
-#include <sys/dir.h>
-#else
-#include <ndir.h>
-#endif
-#endif
-#ifdef dirent
-#undef dirent
-#endif
-#define dirent direct
-#endif /* ! (DIRENT || defined (_POSIX_VERSION)) */
-
#if HAVE_VFORK_H
#include <vfork.h>
#endif
msgstr ""
"Project-Id-Version: WinMerge\n"
"Report-Msgid-Bugs-To: http://bugs.winmerge.org/\n"
-"POT-Creation-Date: 2011-09-17 23:51+0000\n"
+"POT-Creation-Date: 2011-11-13 22:21+0000\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: English <winmerge-translate@lists.sourceforge.net>\n"