Mercurial > mxd2map
changeset 267:a9608c818796
Merged.
author | Administrator@vbox-server2003.hq.intevation.de |
---|---|
date | Thu, 08 Sep 2011 15:56:45 +0200 |
parents | 713ea6f42e55 (diff) 4ca47adee224 (current diff) |
children | 1725558a9ce8 |
files | ChangeLog |
diffstat | 11 files changed, 476 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Thu Sep 08 15:06:40 2011 +0200 +++ b/ChangeLog Thu Sep 08 15:56:45 2011 +0200 @@ -1,3 +1,21 @@ +2011-09-08 Raimund Renkert <raimund.renkert@intevation.de> + + Added missing files and removed libraries. + + * contrib\installer\LICENCE.txt, + contrib\installer\MXD2map-installer.nsi, + contrib\installer\bin\lib\Readme.txt, + contrib\installer\favicon.ico, + contrib\installer\logo_wide.bmp: + New. + + * contrib\installer\bin\lib\commons-codec-1.5.jar, + contrib\installer\bin\lib\jargs.jar, + contrib\installer\bin\lib\log4j-1.2.16.jar, + contrib\installer\bin\lib\mapscript.dll, + contrib\installer\bin\lib\mapscript.jar: + Removed. + 2011-09-08 Raimund Renkert <raimund.renkert@intevation.de> Added installer files.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contrib/installer/LICENCE.txt Thu Sep 08 15:56:45 2011 +0200 @@ -0,0 +1,165 @@ + + **GNU LESSER GENERAL PUBLIC LICENSE** + Version 3, 29 June 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + +0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser + General Public License, and the "GNU GPL" refers to version 3 of the GNU + General Public License. + + "The Library" refers to a covered work governed by this License, + other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided + by the Library, but which is not otherwise based on the Library. + Defining a subclass of a class defined by the Library is deemed a mode + of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an + Application with the Library. The particular version of the Library + with which the Combined Work was made is also called the "Linked + Version". + + The "Minimal Corresponding Source" for a Combined Work means the + Corresponding Source for the Combined Work, excluding any source code + for portions of the Combined Work that, considered in isolation, are + based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the + object code and/or source code for the Application, including any data + and utility programs needed for reproducing the Combined Work from the + Application, but excluding the System Libraries of the Combined Work. + +1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License + without being bound by section 3 of the GNU GPL. + +2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a + facility refers to a function or data to be supplied by an Application + that uses the facility (other than as an argument passed when the + facility is invoked), then you may convey a copy of the modified + version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + +3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from + a header file that is part of the Library. You may convey such object + code under terms of your choice, provided that, if the incorporated + material is not limited to numerical parameters, data structure + layouts and accessors, or small macros, inline functions and templates + (ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + +4. Combined Works. + + You may convey a Combined Work under terms of your choice that, + taken together, effectively do not restrict modification of the + portions of the Library contained in the Combined Work and reverse + engineering for debugging such modifications, if you also do each of + the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + +5. Combined Libraries. + + You may place library facilities that are a work based on the + Library side by side in a single library together with other library + facilities that are not Applications and are not covered by this + License, and convey such a combined library under terms of your + choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + +6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions + of the GNU Lesser General Public License from time to time. Such new + versions will be similar in spirit to the present version, but may + differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the + Library as you received it specifies that a certain numbered version + of the GNU Lesser General Public License "or any later version" + applies to it, you have the option of following the terms and + conditions either of that published version or of any later version + published by the Free Software Foundation. If the Library as you + received it does not specify a version number of the GNU Lesser + General Public License, you may choose any version of the GNU Lesser + General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide + whether future versions of the GNU Lesser General Public License shall + apply, that proxy's public statement of acceptance of any version is + permanent authorization for you to choose that version for the + Library.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contrib/installer/MXD2map-installer.nsi Thu Sep 08 15:56:45 2011 +0200 @@ -0,0 +1,286 @@ +; NSIS script to build Windows installer of MXD2map +; +; Copyright (c) 2011 by Intevation GmbH, Germany <info@intevation.de> +; +; This file is part of MXD2map. +; +; This program is free software under the LGPL (>=v2.1) +; Read the file LICENCE.txt coming with the software for details +; or visit http://www.gnu.org/licenses/ if it does not exist. +; +; MXD2map has been developed on behalf of the +; Bundesamt fuer Seeschifffahrt und Hydrographie (BSH) in Hamburg +; by Intevation GmbH. +; +; Authors: +; Raimund Renkert <raimund.renkert@intevation.de> +; Bjoern Schilberg <bjoern.schilberg@intevation.de> +; Stephan Holl <stephan.holl@intevation.de> +; + + +; Product defines ------------ +!define PRODUCT_NAME "MXD2map" +!define PRODUCT_VERSION "0.9" +!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\mxd2map" +!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" +!define PRODUCT_UNINST_ROOT_KEY "HKLM" +!define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir" +; --------------------------- + + +; MUI 2 compatible ---------- +!include "MUI2.nsh" +!include "Sections.nsh" +!include "InstallOptions.nsh" +; --------------------------- + + +; MUI Settings -------------- +!define MUI_ABORTWARNING +!define MUI_ICON "favicon.ico" +!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" +!define MUI_HEADERIMAGE +!define MUI_HEADERIMAGE_BITMAP "logo_wide.bmp" +!define MUI_WELCOMEPAGE_TITLE_3LINES +!define MUI_FINISHPAGE_TITLE_3LINES +!define MUI_FINISHPAGE_TEXT $(TXT_FIN) + +; Language selection dialog settings +!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" +!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" +!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language" + +; Check for Admin +!define MUI_PAGE_CUSTOMFUNCTION_SHOW PrintNonAdminWarning + +; Welcome page +!insertmacro MUI_PAGE_WELCOME + +; License page +!insertmacro MUI_PAGE_LICENSE "LICENCE.txt" + +; Components page +!define MUI_COMPONENTSPAGE_SMALLDESC +!insertmacro MUI_PAGE_COMPONENTS + +; Directory page +!insertmacro MUI_PAGE_DIRECTORY + +; Start menu page +var ICONS_GROUP +!define MUI_STARTMENUPAGE_NODISABLE +!define MUI_STARTMENUPAGE_DEFAULTFOLDER "MXD2map" +!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" +!define MUI_STARTMENUPAGE_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" +!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "${PRODUCT_STARTMENU_REGVAL}" +!insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP + +; Instfiles page +!insertmacro MUI_PAGE_INSTFILES + +; Uninstaller pages +!define MUI_PAGE_CUSTOMFUNCTION_SHOW un.PrintNonAdminWarning +!insertmacro MUI_UNPAGE_INSTFILES + +; Language files +!insertmacro MUI_LANGUAGE "English" +!insertmacro MUI_LANGUAGE "German" +; --------------------------- + + +; Language strings ---------- +LangString DESC_SEC_MXD2MAP ${LANG_ENGLISH} \ + "MXD2map is a converter for ArcGIS MXD-files into UMN MapServer Mapfiles." +LangString DESC_SEC_MXD2MAP ${LANG_GERMAN} \ + "MXD2map wird zur Erzeugung von UMN MapServer- Konfigurationsdateien aus ArcGIS MXD-Dateien verwendet." +LangString DESC_SEC_EXAMPLES ${LANG_ENGLISH} \ + "The examples show how to use and configure MXD2map." +LangString DESC_SEC_EXAMPLES ${LANG_GERMAN} \ + "Die Beispiele zeigen, wie MXD2map benutzt und konfiguriert werden kann." +LangString UN_PRE ${LANG_ENGLISH} \ + "Do you want to remove $(^Name) and all of its components?" +LangString UN_PRE ${LANG_GERMAN} \ + "Möchten Sie $(^Name) mit allen Komponenten deinstallieren?" +LangString UN_POST ${LANG_ENGLISH} "Uninstall of $(^Name) successful." +LangString UN_POST ${LANG_GERMAN} "Deinstallation von $(^Name) erfolgreich." +LangString MISSING_ARCGIS ${LANG_ENGLISH} \ + "ArcGIS is not installed. Please install an ArcGIS Environment first." +LangString MISSING_ARCGIS ${LANG_GERMAN} \ + "ArcGIS ist nicht installiert. Bitte installieren Sie eine ArcGIS Umgebung." +LangString TXT_DOC ${LANG_ENGLISH} "Documentation" +LangString TXT_DOC ${LANG_GERMAN} "Dokumentation" +LangString TXT_ADMIN ${LANG_ENGLISH} \ + "Warning: Administrator permissions required for the installation of ${PRODUCT_NAME}." +LangString TXT_ADMIN ${LANG_GERMAN} \ + "Achtung: Für die Installation von ${PRODUCT_NAME} werden Administratorrechte benötigt." +LangString TXT_ADMIN_UN ${LANG_ENGLISH} \ + "Warning: Administrator permissions required for the uninstallation of ${PRODUCT_NAME}." +LangString TXT_ADMIN_UN ${LANG_GERMAN} \ + "Achtung: Für die Deinstallation von ${PRODUCT_NAME} werden Administratorrechte benötigt." + +; --------------------------- + + +; Install settings ---------- +Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" +OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe" +InstallDir "$PROGRAMFILES\${PRODUCT_NAME}" +InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "" +ShowInstDetails show +ShowUnInstDetails show +RequestExecutionLevel admin +; --------------------------- + + +; MXD2map ------------------- +Section "MXD2map" SEC01 + SectionIn RO + SetOutPath "$INSTDIR" + SetShellVarContext all + SetOverwrite ifnewer + File "LICENCE.txt" + File /r "bin\*.*" + File "favicon.ico" + + ReadEnvStr $R0 "HOMEDRIVE" + ReadEnvStr $R1 "HOMEPATH" + CreateDirectory "$R0$R1\MXD2map" + CreateDirectory "$R0$R1\MXD2map\logs" + + !insertmacro MUI_STARTMENU_WRITE_BEGIN Application + CreateDirectory "$SMPROGRAMS\$ICONS_GROUP" + CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\MXD2map Shell.lnk" \ + "$INSTDIR\MXD2map-Shell.bat" "" "$INSTDIR\favicon.ico" + CreateShortCut "$DESKTOP\MXD2map Shell.lnk" \ + "$INSTDIR\MXD2map-Shell.bat" "" "$INSTDIR\favicon.ico" + CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\$(TXT_DOC).lnk"\ + "http://mxd2map.org/documentation/index.html" "" "$INSTDIR\favicon.ico" 0 + !insertmacro MUI_STARTMENU_WRITE_END +SectionEnd +; --------------------------- + + +; Examples ------------------ +Section "Examples" SEC02 + SetOverwrite ifnewer + SetShellVarContext all + File /r "example\*.*" + + ReadEnvStr $R0 "HOMEDRIVE" + ReadEnvStr $R1 "HOMEPATH" + CreateDirectory "$R0$R1\MXD2map\example" + + !insertmacro MUI_STARTMENU_WRITE_BEGIN Application + CreateDirectory "$SMPROGRAMS\$ICONS_GROUP" + CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Run Example.lnk" \ + "$INSTDIR\RunExample.bat" + !insertmacro MUI_STARTMENU_WRITE_END +SectionEnd +; --------------------------- + + +; Section descriptions ------ +!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN + !insertmacro MUI_DESCRIPTION_TEXT ${SEC01} $(DESC_SEC_MXD2MAP) + !insertmacro MUI_DESCRIPTION_TEXT ${SEC02} $(DESC_SEC_EXAMPLES) +!insertmacro MUI_FUNCTION_DESCRIPTION_END +; --------------------------- + + +; Icons --------------------- +Section -AdditionalIcons + !insertmacro MUI_STARTMENU_WRITE_BEGIN Application + CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk" "$INSTDIR\uninst.exe" + !insertmacro MUI_STARTMENU_WRITE_END +SectionEnd +; --------------------------- + + +; Post install -------------- +Section -Post + WriteUninstaller "$INSTDIR\uninst.exe" + WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" +SectionEnd +; --------------------------- + + +; Uninstall ----------------- +Section Uninstall + SetShellVarContext all + !insertmacro MUI_STARTMENU_GETFOLDER "Application" $ICONS_GROUP + RMDir /r "$SMPROGRAMS\$ICONS_GROUP" + RMDir /r "$INSTDIR" + + Delete "$DESKTOP\MXD2map Shell.lnk" + + DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" + DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}" + SetAutoClose true +SectionEnd +; --------------------------- + + +; On startup ---------------- +Function .onInit + ; Check to see if ArcGIS installed + ReadRegStr $R0 HKLM "SOFTWARE\ESRI\ArcGIS\" "InstallDir" + StrCmp $R0 "" +2 + IfFileExists "$R0*.*" Installed +1 + messagebox MB_DEFBUTTON1|MB_OK $(MISSING_ARCGIS) + Quit + Installed: + ; Continue installing the MXD2map converter. +FunctionEnd +; --------------------------- + + +; On uninstaller startup ---- +Function un.onInit + ; Ask for removal. + !insertmacro MUI_UNGETLANGUAGE + MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 $(UN_PRE) IDYES +2 + Abort +FunctionEnd +; --------------------------- + + +; On uninstaller succuss ---- +Function un.onUninstSuccess + ; Close window and show success dialog + HideWindow + MessageBox MB_ICONINFORMATION|MB_OK $(UN_POST) +FunctionEnd +; --------------------------- + +Function PrintNonAdminWarning + ClearErrors + UserInfo::GetName + IfErrors leave + POP $0 + UserInfo::GetAccountType + POP $1 + StrCmp $1 "Admin" leave +1 + MessageBox MB_OK|MB_ICONEXCLAMATION "$(TXT_ADMIN)" + Quit + + leave: +FunctionEnd + +Function un.PrintNonAdminWarning + ClearErrors + UserInfo::GetName + IfErrors leave + POP $0 + UserInfo::GetAccountType + POP $1 + StrCmp $1 "Admin" leave +1 + MessageBox MB_OK|MB_ICONEXCLAMATION "$(TXT_ADMIN_UN)" + Quit + + leave: +FunctionEnd