Commit 121a6fd3 authored by Michael Reeves's avatar Michael Reeves
Browse files

*Initial Commit

parent be348bcf
......@@ -20,20 +20,20 @@ link_directories(
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-kdiff3.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kdiff3.h )
add_subdirectory(src-QT4)
add_subdirectory(po)
#add_subdirectory(po)
add_subdirectory(doc)
find_file(KFILEITEMACTIONPLUGIN_FOUND kfileitemactionplugin.h PATHS ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH)
find_file(KFILEITEMACTIONPLUGIN_FOUND kabstractfileitemactionplugin.h PATHS ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH)
if(KFILEITEMACTIONPLUGIN_FOUND)
message(STATUS "")
message(STATUS "kfileitemactionplugin.h found........... YES")
message(STATUS "kabstractfileitemactionplugin.h found........... YES")
message(STATUS " => kdiff3fileitemactionplugin (KDiff3 contextmenu plugin for Konqueror/Dolphin, KDE>4.6) will be built.")
message(STATUS "")
add_subdirectory(kdiff3fileitemactionplugin)
else(KFILEITEMACTIONPLUGIN_FOUND)
message(STATUS "")
message(STATUS "kfileitemactionplugin.h found........... NO")
message(STATUS "kabstractfileitemactionplugin.h found........... NO")
message(STATUS " => kdiff3fileitemactionplugin (KDiff3 contextmenu plugin for Konqueror/Dolphin, KDE>4.6) will not be built.)")
message(STATUS "Trying fallback via libkonq (works with Konqueror only) ...")
MACRO_OPTIONAL_FIND_PACKAGE(LibKonq)
......
......@@ -6,6 +6,8 @@ Version 0.9.98a - 2012-09-11
- Improved handling of texts with both right to left and left to right languages (mixed Arabic and western texts).
- Improved handling of Chinese and Japanese.
- Whitespace characters are now shown as dots for spaces and arrows for tabs, and not only in differences.
- Fixed symlink comparison (Qt4 symLinkTarget returns absolute paths)
- Fix for saving to relative path in KDE-environments. (Patch from Harald Sitter)
Version 0.9.97 - 2012-08-10
===========================
......@@ -88,7 +90,7 @@ Version 0.9.93 - 2009/01/06
Version 0.9.92 - 2007/04/15
===========================
- Windows installer now allows to install KDiff3 as Clearcase Diff and Merge Tool
- Windows installer now allows you to install KDiff3 as Clearcase Diff and Merge Tool
- Windows installer "SVN Merge tool" corrected: Not creating $AppData\Subversion\config subdir anymore.
- KDE-Konqueror plugin: Launch KDiff3 from Konqueror. (Similar to Diff-Ext on Windows.)
- Qt4-version
......@@ -99,7 +101,7 @@ Version 0.9.92 - 2007/04/15
- Temp file names use the process id in file name to allow several instances.
- Suppress flicker during startup. (Don't show status info window on creation.)
- New File comparison mode: Trust the size and date, but use binary comparison if date doesn't match (unsafe)
- After explicitely selecting files any file of the selected may be right clicked for context menu.
- After explicitly selecting files any file of the selected may be right clicked for context menu.
- Open dialog also shows current directories in directory comparison mode.
- Writing a file via --auto option didn't work for relative files. (Reported by Guilhem Bichot)
- New option for history merge: Max number of history entries
......@@ -221,7 +223,7 @@ Version 0.9.84 - 2004/05/29
============================
New Features:
- Word Wrap for DiffTextWindow
- Directory-Comparison: Option "Full Analysis" allows to show the number of solved vs. unsolved
- Directory-Comparison: Option "Full Analysis" allows you to show the number of solved vs. unsolved
conflicts or deltas vs. whitespace-changes in the directory tree.
- Diff-Menu for Diff-view specific entries
- Docs now contain a new chapter for uses of preprocessor and line-matching-preprocessor.
......@@ -232,7 +234,7 @@ New Features:
- In the Qt-only-version the user-interface-language can be set via the regional-settings
(only effective after a restart).
- ProgressDialog redesign for recursive use.
- Overview now allows to show the delta between two other files in triplediff-mode.
- Overview now allows you to show the delta between two other files in triplediff-mode.
- Option to ignore case which treats case-changes like white space (instead of conversion to upcase).
Bugfixes:
- Dir-Comp: When one file exists, but the other doesn't then instead the latest used other file was displayed.
......
......@@ -2,8 +2,8 @@ KDiff3-Readme
=============
Author: Joachim Eibl (joachim.eibl at gmx.de)
Copyright: (C) 2002-2012 by Joachim Eibl
KDiff3-Version: 0.9.97
Copyright: (C) 2002-2009 by Joachim Eibl
KDiff3-Version: 0.9.94
KDiff3 runs best on KDE but can be built without it, depending only on Qt-libs.
These are available for Un*x, Windows, Mac.
......@@ -23,8 +23,7 @@ Contents
- for Linux/Un*x
- for Windows
- Debugging with MinGW under Windows:
- for Mac: Building KDiff3 for Mac OSX (with Intel processor) as a
universal binary
- for Mac: Building KDiff3 for Mac OSX (with Intel processor) as a universal binary
- Creating and installing translation messages
- Additional hints
......@@ -61,51 +60,48 @@ License
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02111-1307
USA
Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02111-1307 USA
For details see file "COPYING".
Exception from the GPL:
As a special exception, the copyright holder Joachim Eibl gives permission
to link this program with the Qt-library (commercial or open source edition)
from Trolltech (www.trolltech.com), and he permits to distribute the resulting
executable, without including the source code for the Qt-library in the
source distribution.
Requirements & Installation
---------------------------
- for KDE4:
From version 0.9.94 on KDiff3 supports KDE4.
For installation on most distributions you usually also need these packages
(names as on opensuse):
For installation on most distributions you usually also require these packages (names as on opensuse):
- g++ (g++, version 3.4 or newer)
- libqt4-devel (Qt4-libs, version 4.4.0 or newer)
- libkde4-devel (KDE4 Header files and development libraries)
- libkonq-devel (optional, needed for the kdiff3-plugin, if not installed
- libkonq-devel (optional, needed for the kdiff3-plugin, if not installed
then the contextmenu plugin for konqueror won't be built.)
- cmake (>2.6, checks dependencies and creates the appropriate Makefiles for
your system)
Typically in a terminal (e.g. konsole) you cd into the kdiff3-directory and
run "./configure kde4". This script is essentially the same as these commands:
mkdir releaseKde
cd releaseKde
# Find out your KDE4-directory and note the result
kde4-config --prefix
# create Makefile, replace <KDE4-prefix> with the prior result
cmake .. -DCMAKE_INSTALL_PREFIX=<KDE4-prefix>
# run make (compile and link)
make
# install as root user
sudo make install
- cmake (>2.6, checks dependencies and creates the Makefiles appopriate for your system)
Typically in a terminal (e.g. konsole) you cd into the kdiff3-directory and run these commands.
mkdir release # create sub directory
cd release # cd into that directory
kde4-config --prefix # Find out your KDE4-directory and note the result
cmake .. -DCMAKE_INSTALL_PREFIX=<KDE4-prefix> # create Makefile, replace <KDE4-prefix> with the prior result
make # run make (compile and link)
sudo make install # install as root user
Now KDiff3 should be ready to use. Type "kdiff3" to start it.
There should also be a entry in your KDE-start menu in
"(Applications->)Development".
There should also be a entry in your KDE-start menu in "(Applications->)Development".
For creating a debug version:
mkdir debug
cd debug
# Find out your KDE4-directory and note the result
kde4-config --prefix
cmake .. -DCMAKE_INSTALL_PREFIX=<KDE4-prefix> -DCMAKE_BUILD_TYPE=debugfull
kde4-config --prefix # Find out your KDE4-directory and note the result
cmake .. -DCMAKE_INSTALL_PREFIX=<KDE4-prefix> -DCMAKE_BUILD_TYPE=debugfull
make
sudo make install
......@@ -118,24 +114,19 @@ Requirements & Installation
- for Windows
- for Mac
The version 0.9.97 requires Qt 4.4.0 or newer (from http://qt-project.org/) for
compilation.
The version 0.9.94 requires Qt 4.4.0 or newer (from www.trolltech.com) for compilation.
You always need:
- kdiff3-0.9.97.tar.gz
You always need
- kdiff3-0.9.94.tar.gz
- for Un*x: gcc, g++ with version >=3.4.2
Qt-X11-libraries
- for Windows: Qt-win-libs
If you have the Qt4 commercial edition, then compile with
Visual Studio.NET 2003 or newer.
If you use the Qt4 open source edition, then you'll need
MinGW.
I verified that compilation and debugging works with
these packages (probably newer ones will also work):
- Use MinGW-5.1.4.exe or newer to install the following
or newer:
If you have the Qt4 commercial edition, then compile with Visual Studio.NET2003 or newer.
If you use the Qt4 open source edition, then you'll need MinGW.
I verified that compilation and debugging works with these packages (probably newer ones will also work):
- Use MinGW-5.1.4.exe or newer to install the following or newer:
- gcc-core-3.4.5-20060117-1.tar.gz
- binutils-2.17.50-20060824-1.tar.gz
- gcc-g++-3.4.5-20060117-1.tar.gz
......@@ -146,78 +137,60 @@ Requirements & Installation
- for Mac: gcc, g++ with version >=3.4.2
Qt-Mac-libraries
- Optional: Qt Creator IDE: Development environment optimized for Qt
(from http://qt-project.org)
- Optional: Qt Creator IDE: Development environment optimized for Qt (http://trolltech.com/developer/qt-creator)
Build-instructions (Un*x):
Assuming Qt is correctly installed run "./configure qt4" which essentially
does the same as:
- mkdir releaseQt
- cd releaseQt
- qmake ../src-QT4/kdiff3.pro
- Make sure your shell-variable QTDIR is correct and that
your path contains the Qt4-bin-directory.
- cd into the directory kdiff3-0.9.94/src-QT4 and type
- qmake kdiff3.pro
- make (or "gmake" for GNU-Make)
Build-instructions (Windows):
- If you use Qt Creator from the SDK just load the src-QT4\kdiff3.pro
file and build.
On the command line (cmd.exe):
- set QTDIR=<QT4-dir> e.g.: c:\qt\4.4.1
set "PATH=%QTDIR%\bin;%PATH%"
- Prepare compiler settings:
For Visual Studio run the respective vsvars32.bat
For MinGW add the path: E.g. set "PATH=c:\mingw\bin;%PATH%"
- cd into the directory kdiff3-0.9.97\src-Qt4 and type
- cd into the directory kdiff3-0.9.94\src-Qt4 and type
- qmake kdiff3.pro
- Either "nmake" for Visual Studio or "mingw32-make" depending on what you
have.
- Either "nmake" for Visual Studio or "mingw32-make" depending on what you have.
Debugging with MinGW under Windows:
- Qt Creator worked very well as debugger frontend too!
- Qt Creator worked very good as debugger frontend too!
- Debugging without gdb on the console:
- The qt-win-opensource-4.4.1-mingw.exe only installs release dlls. You
will have to compile the debug dlls yourself. Enter the
qt-4.4.1-directory and run "configure -debug" and then "mingw32-make".
- cd into the directory kdiff3-0.9.97\src-Qt4
- edit the file "Makefile.Debug" and in the LFLAGS replace
"-Wl,-subsystem,windows" with "-Wl,-subsystem,console" (this is
necessary so that gdb can send a break signal to the running program)
- The qt-win-opensource-4.4.1-mingw.exe only installs release dlls. You will have to compile the
debug dlls yourself. Enter the qt-4.4.1-directory and run "configure -debug" and then "mingw32-make".
- cd into the directory kdiff3-0.9.94\src-Qt4
- edit the file "Makefile.Debug" and in the LFLAGS replace "-Wl,-subsystem,windows" with "-Wl,-subsystem,console"
(this is necessary so that gdb can send a break signal to the running program)
- mingw32-make debug (create a debuggable executable)
- gdb debug\kdiff3.exe
- At the "(gdb)"-prompt type "run" and enter to start.
- While the program runs you can't set breakpoints, first interrupt it
with Ctrl-C.
- Use "help" to find out about how to use gdb. (Important commands: run,
break, backtrace, print, quit)
Using break with c++-methods requires to specify the parameter types
too. Breakpoints in constructors might not work.
Building KDiff3 (Qt4) for Mac OSX:
0) Build with Qt Creator from the SDK and src-QT4\kdiff3.pro.
Building a universal binary (by Michael Schmidt, perhaps outdated):
1) Install Qt/Mac 4.x with thread support, static libraries and universal
flag. (For Qt4 run "configure -static"; only necessary if the final binary
should not require shared Qt4-libs.)
2) cd .../kdiff3-0.9.97/src-QT4
- While the program runs you can't set breakpoints, first interrupt it with Ctrl-C.
- Use "help" to find out about how to use gdb. (Important commands: run, break, backtrace, print, quit)
Using break with c++-methods requires to specify the parameter types too. Breakpoints in constructors might not work.
Building KDiff3 (Qt4) for Mac OSX (with Intel processor) as a universal binary (by Michael Schmidt)
1) Install Qt/Mac 4.x with thread support, static libraries and universal flag.
(For Qt4 run "configure -static"; only necessary if the final binary should not require shared Qt4-libs.)
2) cd .../kdiff3-0.9.94/src-QT4
3a) Create a makefile for kdiff3 by executing:
qmake kdiff3.pro
3b) optionally generate XCode-Project (for debugging purposes only) by
executing:
3b) optionally generate XCode-Project (for debugging purposes only) by executing:
qmake -spec macx-xcode kdiff3.pro
4) Execute:
make
5) After the build completes copy kdiff3 from the kdiff3-0.9.97/src-QT4
directory to:
5) After the build completes copy kdiff3 from the kdiff3-0.9.94/src-QT4 directory to
/Applications
Creating and installing the translation messages
The po directory contains translations from the KDE-translation teams.
If you use the Qt-only-version of KDiff3, then the installation described
above won't install translations automatically.
If you use the Qt-only-version of KDiff3, then the installation described above
won't install translations automatically.
To create and install the translations:
1) cd .../kdiff3-0.9.97/po
0) Make sure /usr/lib/qt3/bin/msg2qm exists
(comes with qt3-devel-tools. [Yes, really Qt3. There is no Qt4 replacement yet.])
1) cd .../kdiff3-0.9.95/po
2) sh create_qm_files install (asks for a super user password)
Just to create the files in the po directory (as needed for the windows
version):
Just to create the files in the po directory (as needed for the windows version):
2) sh create_qm_files local
......
......@@ -2,10 +2,10 @@ This file contains some feature-wishes for future KDiff3-versions.
TODO
====
- Verknüpfungsziel für Links relativ anzeigen
- See link target for relative links
- KDiff3-Plugin sollte auch in Dolphin arbeiten
- Alignmenttechnik bei Merge von 3 Dateien wählbar
- Horizontales Scrolling reparieren
- Alignment of technology with Merge 3 files selectable (Huh? Bad translation from german I guess.)
- Horizontal Scrolling reparieren
- Fix drawing in columns A/B/C-directory window
- Qt4-translation files
......@@ -38,10 +38,10 @@ TODO
- Only show different lines.
- ftp: Abbruch beim Einlesen von Verzeichnis stoppt nicht vollständig
- ftp: Abort when reading directory does not stop completely
- Projekt-Verwaltung: Die ganze Config-Datei (=Projektdatei) an einen benutzerdefinierten Ort zu legen. (Keine Angabe->Default)
- Bei Combobox-History alle Elemente von (A/B/C/Out) anzeigen.
- Project management: Put the config file (= project file) in a custom location. (None-> Default)
- Combobox-History show all elements of (A / B / C / out).
- Test on empty floppy drive.
......@@ -62,7 +62,7 @@ TODO
- kdiff3 does not preserve the permissions of files it overwrites during a 'save' operation.
- Insbesondere Ausführbarkeit "x" und Schreibschutz "w" sollten erhalten bleiben.
- In particular, write protection of file should be retained..
- Under Windows: Shortcut Ctrl-Shift-2 (for select B everywhere doesn't work.)
- Paste from Clipboard doesn't work.
......@@ -94,9 +94,9 @@ TODO
- Optionally show size/date for A/B/C
- Choose what to see (all or only different items)
- If only different items are visible: copy the others nevertheless to destdir.
- Warnung wenn Datum in B oder C älter als A ist.
- Zielverzeichnis nachträglich änderbar
- Bei Kopie von Remote nach lokal: Auf jeden Fall das modification Datum setzen.
- Warning if date of A is older than B or C.
- Destination directory can be changed later
- For a copy of remote to local: set the modification date in any case.
- Ctrl-Space doesn't work when a file comparison takes place.
- Option to allow case-insensitive filename-matching.
- Options to show/suppress annoying messages
......
#!/bin/sh
# Manually created configure
echo "configure for KDiff3 Qt4/KDE4 by Joachim Eibl"
if [ "$1" = "kde4" ]; then
echo Trying to build for KDE4. If anything fails see the README for details.
echo Creating and entering subdir "release"
mkdir release # create sub directory
cd release
echo "Running cmake .. -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix`"
cmake .. -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` # create Makefile
echo Running make.
make # run make (compile and link)
echo "If everything went OK then KDiff3 was built in the release-subdir."
echo "Install as root (requires password)."
sudo make install # install as root user
elif [ "$1" = "qt4" ]; then
echo Trying to build for Qt4 without KDE
echo "Entering subdir src-QT4"
cd src-QT4
echo "Running qmake kdiff3.pro"
qmake kdiff3.pro
echo "Running make"
make
echo "If everything went OK then KDiff3 was built as src-QT4/kdiff3"
else
echo Usage 1: configure kde4
echo Usage 2: configure qt4
echo For requirements, more options and details in case of failure see the README.
fi
# Project: diff_ext
# Generates diff_ext_for_kdiff3.dll with gcc.
# Can be used for Cygwin and MingW (MingW ignores -mno-cygwin)
#
PROJ := diff_ext_for_kdiff3
CXX ?= g++.exe
ifdef DEBUG
CXXFLAGS ?= -g
else
CXXFLAGS ?= -Os
LDFLAGS += -s -static-libgcc
endif
CXXFLAGS += -pedantic -Wall -W -D_UNICODE -DUNICODE
LIBS := -luuid -lole32
DEFFILE = $(PROJ).def
STATICLIB = $(PROJ).a
EXPLIB = $(PROJ).exp
SRC-CXX = $(wildcard *.cpp)
SRC-RC = $(wildcard *.rc)
OBJ := $(SRC-CXX:.cpp=.o)
RES := $(SRC-RC:.rc=.res)
OBJ += $(RES)
DLL := $(PROJ).dll
.PHONY: all clean
.SUFFIXES: .rc .res
all: .depend $(DLL)
debug:
$(MAKE) DEBUG=YES UNICODE=YES
release:
$(MAKE)
.depend: Makefile $(SRC-RC) $(SRC-CXX)
$(CXX) -M $(CXXFLAGS) $(SRC-RC) $(SRC-CXX) > .depend
include .depend
clean:
del .depend $(OBJ) $(DLL) ${EXPLIB} $(STATICLIB)
$(DLL): $(OBJ)
dllwrap.exe \
--mno-cygwin \
--def $(DEFFILE) \
--output-exp ${EXPLIB} \
--driver-name c++ -L/usr/local/lib -L/usr/lib/mingw \
--implib $(STATICLIB) \
$(OBJ) $(LDFLAGS) $(LIBS) \
-o $@
.cpp.o:
$(CXX) $(CXXFLAGS) -c $< -o $@
.rc.res:
windres.exe $< -J rc -o $@ -O coff -DMING
# Project: diff_ext
# Generates diff_ext_for_kdiff3.dll with gcc.
# Can be used for Cygwin and MingW (MingW ignores -mno-cygwin)
#
PROJ := diff_ext_for_kdiff3
CXX ?= g++.exe
ifdef DEBUG
CXXFLAGS ?= -g
else
CXXFLAGS ?= -Os
LDFLAGS += -s
endif
CXXFLAGS += -ansi -pedantic -Wall -W -D_UNICODE -DUNICODE
LIBS := -luuid -lole32
DEFFILE = $(PROJ).def
STATICLIB = $(PROJ).a
EXPLIB = $(PROJ).exp
SRC-CXX = $(wildcard *.cpp)
SRC-RC = $(wildcard *.rc)
OBJ := $(SRC-CXX:.cpp=.o)
RES := $(SRC-RC:.rc=.res)
OBJ += $(RES)
DLL := $(PROJ).dll
.PHONY: all clean
.SUFFIXES: .rc .res
all: .depend $(DLL)
debug:
$(MAKE) DEBUG=YES UNICODE=YES
release:
$(MAKE)
.depend: Makefile $(SRC-RC) $(SRC-CXX)
$(CXX) -M $(CXXFLAGS) $(SRC-RC) $(SRC-CXX) > .depend
include .depend
clean: clean-custom
${RM} $(OBJ) $(DLL) ${EXPLIB} $(STATICLIB)
$(DLL): $(OBJ)
dllwrap.exe \
--mno-cygwin \
--def $(DEFFILE) \
--output-exp ${EXPLIB} \
--driver-name c++ -L/usr/local/lib -L/usr/lib/mingw \
--implib $(STATICLIB) \
$(OBJ) $(LDFLAGS) $(LIBS) \
-o $@
.cpp.o:
$(CXX) $(CXXFLAGS) -c $< -o $@
.rc.res:
windres.exe $< -J rc -o $@ -O coff -DMING
# Project: diff_ext
# Generates diff_ext_for_kdiff3.dll with gcc.
# Can be used for Cygwin and MingW (MingW ignores -mno-cygwin)
#
PROJ := diff_ext_for_kdiff3
CXX := x86_64-w64-mingw32-g++.exe
ifdef DEBUG
CXXFLAGS ?= -g
else
CXXFLAGS ?= -Os
LDFLAGS += -s
endif
CXXFLAGS += -ansi -pedantic -Wall -W -D_UNICODE -DUNICODE
LIBS := -luuid -lole32
DEFFILE = $(PROJ).def
STATICLIB = $(PROJ).a
EXPLIB = $(PROJ).exp
SRC-CXX = $(wildcard *.cpp)
SRC-RC = $(wildcard *.rc)
OBJ := $(SRC-CXX:.cpp=.o)
RES := $(SRC-RC:.rc=.res)
OBJ += $(RES)
DLL := $(PROJ).dll
.PHONY: all clean
.SUFFIXES: .rc .res
all: .depend $(DLL)
debug:
$(MAKE) DEBUG=YES UNICODE=YES
release:
$(MAKE)
.depend: Makefile $(SRC-RC) $(SRC-CXX)
$(CXX) -M $(CXXFLAGS) $(SRC-RC) $(SRC-CXX) > .depend
include .depend
clean: clean-custom
${RM} $(OBJ) $(DLL) ${EXPLIB} $(STATICLIB)
$(DLL): $(OBJ)
x86_64-w64-mingw32-dllwrap.exe \
--mno-cygwin \
--def $(DEFFILE) \
--output-exp ${EXPLIB} \
--driver-name x86_64-w64-mingw32-g++ -static-libgcc -L/Users/Joachim/qt/mingw-w64-bin_i686-mingw_20100105/mingw/lib \
--implib $(STATICLIB) \
$(OBJ) $(LDFLAGS) $(LIBS) \
-o $@
.cpp.o:
$(CXX) $(CXXFLAGS) -c $< -o $@
.rc.res:
x86_64-w64-mingw32-windres.exe $< -J rc -o $@ -O coff -DMING
# Project: diff_ext
# Generates diff_ext_for_kdiff3.dll with gcc.
# Can be used for Cygwin and MingW (MingW ignores -mno-cygwin)
#
PROJ := diff_ext_for_kdiff3
CXX := x86_64-w64-mingw32-g++.exe
ifdef DEBUG
CXXFLAGS ?= -g
else
CXXFLAGS ?= -Os
LDFLAGS += -s
endif
CXXFLAGS += -ansi -pedantic -Wall -W -D_UNICODE -DUNICODE
LIBS := -luuid -lole32
DEFFILE = $(PROJ).def
STATICLIB = $(PROJ).a
EXPLIB = $(PROJ).exp
SRC-CXX = $(wildcard *.cpp)
SRC-RC = $(wildcard *.rc)
OBJ := $(SRC-CXX:.cpp=.o)
RES := $(SRC-RC:.rc=.res)
OBJ += $(RES)
DLL := $(PROJ).dll
.PHONY: all clean
.SUFFIXES: .rc .res
all: .depend $(DLL)
debug:
$(MAKE) DEBUG=YES UNICODE=YES
release:
$(MAKE)
.depend: Makefile $(SRC-RC) $(SRC-CXX)
$(CXX) -M $(CXXFLAGS) $(SRC-RC) $(SRC-CXX) > .depend
include .depend
clean: clean-custom
${RM} $(OBJ) $(DLL) ${EXPLIB} $(STATICLIB)
$(DLL): $(OBJ)
x86_64-w64-mingw32-dllwrap.exe \
--mno-cygwin \
--def $(DEFFILE) \
--output-exp ${EXPLIB} \