aboutsummaryrefslogtreecommitdiffstats
path: root/packaging/nsis
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2004-08-26 22:48:29 +0000
committerGuy Harris <guy@alum.mit.edu>2004-08-26 22:48:29 +0000
commit6e9e773a85fa98125d99f5871b8e83f76d9e953d (patch)
treec681ef303ca2c31f538e62a9f54ffaf261d09476 /packaging/nsis
parente6bc3872b08c40d555d073b4636fbeeda67e9328 (diff)
From Lars Roland:
don't support GTK-Wimp for GTK+ 1.2[.x] (it requires 2.x); install the NEWS file as "NEWS.txt"; optionally show it at the end of an installation. svn path=/trunk/; revision=11841
Diffstat (limited to 'packaging/nsis')
-rw-r--r--packaging/nsis/Makefile.nmake1
-rw-r--r--packaging/nsis/ethereal.nsi64
2 files changed, 56 insertions, 9 deletions
diff --git a/packaging/nsis/Makefile.nmake b/packaging/nsis/Makefile.nmake
index eb1bba79f4..e1c021c695 100644
--- a/packaging/nsis/Makefile.nmake
+++ b/packaging/nsis/Makefile.nmake
@@ -50,6 +50,7 @@ DOC=../../doc/ethereal.html \
../../doc/mergecap.html \
../../doc/capinfo.html \
../../FAQ \
+ ../../NEWS \
../../README \
../../README.win32
GPL=../../COPYING
diff --git a/packaging/nsis/ethereal.nsi b/packaging/nsis/ethereal.nsi
index adf7251dd4..7532247ff9 100644
--- a/packaging/nsis/ethereal.nsi
+++ b/packaging/nsis/ethereal.nsi
@@ -70,8 +70,9 @@ XPStyle on
; the file's extension. "README.win32" won't work in most cases, because extension "win32"
; is usually not associated with an appropriate text editor. We should use extension "txt"
; for a text file or "html" for an html README file.
-;!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\help\overview.txt"
-;!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
+!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\NEWS.txt"
+!define MUI_FINISHPAGE_SHOWREADME_TEXT "Show News"
+!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
; ============================================================================
; MUI Pages
@@ -98,6 +99,36 @@ XPStyle on
!endif ; MAKENSIS_MODERN_UI
; ============================================================================
+; Section macros
+; ============================================================================
+!include "Sections.nsh"
+
+; ========= Macro to unselect and disable a section =========
+
+!macro DisableSection SECTION
+
+ Push $0
+ SectionGetFlags "${SECTION}" $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ IntOp $0 $0 | ${SF_RO}
+ SectionSetFlags "${SECTION}" $0
+ Pop $0
+
+!macroend
+
+; ========= Macro to enable (unreadonly) a section =========
+!define SECTION_ENABLE 0xFFFFFFEF
+!macro EnableSection SECTION
+
+ Push $0
+ SectionGetFlags "${SECTION}" $0
+ IntOp $0 $0 & ${SECTION_ENABLE}
+ SectionSetFlags "${SECTION}" $0
+ Pop $0
+
+!macroend
+
+; ============================================================================
; License page configuration
; ============================================================================
LicenseText "Ethereal is distributed under the GNU General Public License."
@@ -232,6 +263,7 @@ File "..\..\README"
File "..\..\README.win32"
File "..\..\AUTHORS-SHORT"
File "..\..\COPYING"
+File /oname=NEWS.txt "..\..\NEWS"
File "..\..\manuf"
File "..\..\doc\ethereal.html"
File "..\..\doc\ethereal-filter.html"
@@ -308,10 +340,8 @@ SetOutPath $INSTDIR\lib\gtk-2.0\${GTK2_INST_VERSION}.0\immodules
File "${GTK2_DIR}\lib\gtk-2.0\${GTK2_INST_VERSION}.0\immodules\im-*.dll"
SetOutPath $INSTDIR\lib\pango\${PANGO_INST_VERSION}.0\modules
File "${GTK2_DIR}\lib\pango\${PANGO_INST_VERSION}.0\modules\pango-*.dll"
-
SectionEnd
-!endif
-
+
!ifdef GTK_WIMP_DIR
Section "GTK-Wimp" SecGTKWimp
;-------------------------------------------
@@ -319,9 +349,9 @@ SetOutPath $INSTDIR\lib\gtk-2.0\${GTK2_INST_VERSION}.0\engines
File "${GTK_WIMP_DIR}\libwimp.dll"
SetOutPath $INSTDIR\share\themes\Default\gtk-2.0
File "${GTK_WIMP_DIR}\Theme\gtk-2.0\gtkrc"
-
SectionEnd
!endif
+!endif
Section "Tethereal" SecTethereal
;-------------------------------------------
@@ -586,6 +616,7 @@ Delete "$INSTDIR\COPYING"
Delete "$INSTDIR\AUTHORS-SHORT"
Delete "$INSTDIR\README*"
Delete "$INSTDIR\FAQ"
+Delete "$INSTDIR\NEWS.txt"
Delete "$INSTDIR\manuf"
Delete "$INSTDIR\pcrepattern.3.txt"
Delete "$SMPROGRAMS\Ethereal\*.*"
@@ -628,7 +659,6 @@ NoFinalErrorMsg:
SectionEnd
-
!ifdef MAKENSIS_MODERN_UI
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!ifdef GTK1_DIR
@@ -636,10 +666,10 @@ SectionEnd
!endif
!ifdef GTK2_DIR
!insertmacro MUI_DESCRIPTION_TEXT ${SecEtherealGTK2} "${PROGRAM_NAME} is a GUI network protocol analyzer (using the modern GTK2 GUI toolkit)."
-!endif
!ifdef GTK_WIMP_DIR
!insertmacro MUI_DESCRIPTION_TEXT ${SecGTKWimp} "GTKWimp is the GTK2 windows impersonator (native Win32 look and feel)."
!endif
+!endif
!insertmacro MUI_DESCRIPTION_TEXT ${SecTethereal} "Tethereal is a network protocol analyzer."
!insertmacro MUI_DESCRIPTION_TEXT ${SecEditCap} "Editcap is a program that reads a capture file and writes some or all of the packets into another capture file."
!insertmacro MUI_DESCRIPTION_TEXT ${SecText2Pcap} "Text2pcap is a program that reads in an ASCII hex dump and writes the data into a libpcap-style capture file."
@@ -656,10 +686,26 @@ SectionEnd
; ============================================================================
; Callback functions
; ============================================================================
-; We simulate the XOR operator
!ifdef GTK1_DIR & GTK2_DIR
+;Disable GTK-Wimp for GTK1
+Function .onSelChange
+ Push $0
+ SectionGetFlags ${SecEtherealGTK1} $0
+ IntOp $0 $0 & 1
+ IntCmp $0 1 onSelChange.disableGTK2Sections
+ ;enable GTK2Sections
+ !insertmacro EnableSection ${SecGTKWimp}
+ Goto onSelChange.end
+onSelChange.disableGTK2Sections:
+ !insertmacro DisableSection ${SecGTKWimp}
+ Goto onSelChange.end
+onSelChange.end:
+ Pop $0
+FunctionEnd
+
!else
!ifdef GTK1_DIR | GTK2_DIR
+; Disable FileExtension if Ethereal isn't selected
Function .onSelChange
Push $0
!ifdef GTK1_DIR