Commit b23014ee authored by chrfranke's avatar chrfranke
Browse files Fix unix2dos and makensis parameters to allow

to build the Windows installer on Linux also.

git-svn-id: 4ea69e1a-61f1-4043-bf83-b5c94c648137
parent 715a3efa
......@@ -43,6 +43,9 @@ NOTES FOR FUTURE RELEASES: see TODO file.
[CF] Fix unix2dos and makensis parameters to allow
to build the Windows installer on Linux also.
[CF] Use a separate build rule for each man page to
avoid compatibility problems with BSD make.
......@@ -494,6 +494,9 @@ To create a Windows installer, use:
package. See for documentation and
download location.
It is also possible to (cross-)build the installer on Linux.
This was successfully tested on Debian with package "nsis".
To both create and run the (interactive) installer, use:
make install-win32
......@@ -538,9 +538,10 @@ CLEANFILES += $(FILES_WIN32) $(exedir_win32)/syslogevt.exe \
smartctl-nc.exe smartctl-nc.exe.tmp \
distdir.mkdir syslogevt.check
# Textfile converter from cygutils
UNIX2DOS = unix2dos -D
DOS2UNIX = dos2unix -U
# Textfile converter from package cygutils or tofrodos
# Note: Only use without options to be compatible with both packages
UNIX2DOS = unix2dos
DOS2UNIX = dos2unix
# Build Windows distribution
......@@ -558,11 +559,12 @@ $(distzip_win32): distdir.mkdir $(FILES_WIN32) syslogevt.check
cd $(distdir_win32) && zip -9Dr ../$(distzip_win32) .
# Build NSIS installer, try to locate makensis in default location first
# Note: Only option character '-' is also compatible with Linux version of makensis
$(distinst_win32): $(srcdir)/os_win32/installer.nsi distdir.mkdir $(FILES_WIN32) syslogevt.check
@makensis="$(MAKENSIS)"; if [ -z "$$makensis" ]; then \
if [ ! -z "$$PROGRAMFILES" ] && "$$PROGRAMFILES/NSIS/makensis" /VERSION >/dev/null 2>&1; then \
if [ ! -z "$$PROGRAMFILES" ] && "$$PROGRAMFILES/NSIS/makensis" -VERSION >/dev/null 2>&1; then \
makensis="$$PROGRAMFILES/NSIS/makensis"; \
elif makensis /VERSION >/dev/null 2>&1; then \
elif makensis -VERSION >/dev/null 2>&1; then \
makensis=makensis; \
else \
echo 'makensis: command not found. Please download and install NSIS' 1>&2; \
......@@ -572,8 +574,8 @@ $(distinst_win32): $(srcdir)/os_win32/installer.nsi distdir.mkdir $(FILES_WIN32)
date=`sed -n 's,^.*DATE[^"]*"\([^"]*\)".*$$,\1,p' svnversion.h`; \
rev=`sed -n 's,^.*REV[^"]*"\([^"]*\)".*$$,r\1,p' svnversion.h`; \
verstr="$(PACKAGE_VERSION) $$date $$rev "$(BUILD_INFO); \
echo "$$makensis /V2 /NOCD /DINPDIR=$(distdir_win32) /DOUTFILE=$(distinst_win32) /DVERSTR='$$verstr' $(srcdir)/os_win32/installer.nsi"; \
"$$makensis" /V2 /NOCD /DINPDIR="$(distdir_win32)" /DOUTFILE="$(distinst_win32)" /DVERSTR="$$verstr" "$(srcdir)/os_win32/installer.nsi"
echo "$$makensis -V2 -NOCD -DINPDIR=$(distdir_win32) -DOUTFILE=$(distinst_win32) -DVERSTR='$$verstr' $(srcdir)/os_win32/installer.nsi"; \
"$$makensis" -V2 -NOCD -DINPDIR="$(distdir_win32)" -DOUTFILE="$(distinst_win32)" -DVERSTR="$$verstr" "$(srcdir)/os_win32/installer.nsi"
rm -rf $(distdir_win32) distdir.mkdir syslogevt.check
......@@ -15,6 +15,8 @@ Summary: smartmontools release 5.40
- smartd libcap-ng support, option '-C, --capabilities'.
- smartctl option '-l scterc[,...]' to get/set the
SCT Error Recovery Control time limit.
- Windows: Support for 64-bit executables.
- Windows: Support for cross compilation on Linux.
- Fix SCT temperature table commands on big endian CPUs.
Date 2010-01-28
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment