build: corrected nsis uninstaller
[adg.git] / build / adg.nsi.in
blob98bfd4dd233f46681317319a05f13786e0efb08e
1 ; ADG installer based on NSIS
2 ; Check http://nsis.sourceforge.net/ for details
4 !define SRCDIR "@abs_top_srcdir@"
5 !define BUILDDIR "@abs_top_builddir@"
6 !define USRDIR "@USRDIR@"
7 !define DLLDIR "${USRDIR}/bin"
9 ; ---------------------------------------------------------------
10 ; 1. Header file
12 !addincludedir "${SRCDIR}/build"
13 !include MUI2.nsh
14 !include EnvVarUpdate.nsh
16 Name "@PACKAGE_NAME@ @PACKAGE_VERSION@"
17 OutFile "@abs_top_builddir@/@PACKAGE@-@PACKAGE_VERSION@-@WINSUFFIX@.exe"
18 SetCompressor /SOLID lzma
19 InstallDir "$PROGRAMFILES\@ADG_API_PACKAGE@"
20 RequestExecutionLevel user
22 ; ---------------------------------------------------------------
23 ; 2. Interface configuration
25 !define MUI_ABORTWARNING
26 !define MUI_COMPONENTSPAGE_SMALLDESC
28 !define MUI_ICON "${SRCDIR}/build/adg.ico"
29 !define MUI_UNICON "${SRCDIR}/build/adg.ico"
31 !define MUI_HEADERIMAGE
32 !define MUI_HEADERIMAGE_RIGHT
33 !define MUI_HEADERIMAGE_BITMAP "${SRCDIR}/build/adg-header.bmp"
34 !define MUI_HEADERIMAGE_UNBITMAP "${SRCDIR}/build/adg-header.bmp"
36 !define MUI_WELCOMEFINISHPAGE_BITMAP "${SRCDIR}/build/adg-welcome.bmp"
37 !define MUI_UNWELCOMEFINISHPAGE_BITMAP "${SRCDIR}/build/adg-welcome.bmp"
39 ; ---------------------------------------------------------------
40 ; 3. Pages
42 !insertmacro MUI_PAGE_WELCOME
43 !insertmacro MUI_PAGE_LICENSE "@abs_top_srcdir@/COPYING"
44 !insertmacro MUI_PAGE_COMPONENTS
45 !insertmacro MUI_PAGE_DIRECTORY
46 !insertmacro MUI_PAGE_INSTFILES
47 !insertmacro MUI_PAGE_FINISH
49 !insertmacro MUI_UNPAGE_WELCOME
50 !insertmacro MUI_UNPAGE_INSTFILES
51 !insertmacro MUI_UNPAGE_FINISH
53 ; ---------------------------------------------------------------
54 ; 4. Language files
56 !insertmacro MUI_LANGUAGE "English"
57 !insertmacro MUI_LANGUAGE "Italian"
59 ; ---------------------------------------------------------------
60 ; 5. Reserve files
63 ; ---------------------------------------------------------------
64 ; I. Installer sections
66 Section "ADG canvas" SecBase
67 SectionIn RO
69 SetOutPath "$INSTDIR"
70 File "${BUILDDIR}/demo/.libs/adg-demo.exe"
71 File "${BUILDDIR}/demo/adg-demo.ui"
72 File "${SRCDIR}/demo/adg-16.png"
73 File "${SRCDIR}/demo/adg-32.png"
74 File "${SRCDIR}/demo/adg-48.png"
75 File "${SRCDIR}/demo/adg-64.png"
76 File "${SRCDIR}/demo/adg-128.png"
78 SetOutPath "$INSTDIR\bin"
79 File "${DLLDIR}/zlib1.dll"
80 File "${DLLDIR}/libexpat-*.dll"
81 File "${DLLDIR}/libintl-*.dll"
82 File "${DLLDIR}/iconv.dll"
83 File "${DLLDIR}/libffi-*.dll"
84 File "${DLLDIR}/libpng??-*.dll"
85 File "${DLLDIR}/libglib-2.0-*.dll"
86 File "${DLLDIR}/libgthread-2.0-*.dll"
87 File "${DLLDIR}/libgmodule-2.0-*.dll"
88 File "${DLLDIR}/libgobject-2.0-*.dll"
89 File "${DLLDIR}/libgio-2.0-*.dll"
90 File "${DLLDIR}/libpixman-1-*.dll"
91 File "${DLLDIR}/libcairo-*.dll"
92 File "${DLLDIR}/libpango-1.0-*.dll"
93 File "${DLLDIR}/libpangocairo-1.0-*.dll"
94 File "${DLLDIR}/libpangowin32-1.0-*.dll"
95 File "${DLLDIR}/libatk-1.0-*.dll"
96 File "${DLLDIR}/libgdk_pixbuf-2.0-*.dll"
97 File "${DLLDIR}/libgdk-3-*.dll"
98 File "${DLLDIR}/libgtk-3-*.dll"
99 File "${BUILDDIR}/src/cpml/.libs/libcpml-1-*.dll"
100 File "${BUILDDIR}/src/adg/.libs/libadg-1-*.dll"
102 SetOutPath "$INSTDIR\share\glib-2.0\schemas"
103 File "${USRDIR}/share/glib-2.0/schemas/gschemas.compiled"
105 CreateDirectory "$SMPROGRAMS\ADG Canvas"
106 CreateShortcut "$SMPROGRAMS\ADG Canvas\ADG demonstration program.lnk" "$INSTDIR\adg-demo.exe"
107 CreateShortcut "$SMPROGRAMS\ADG Canvas\Uninstall ADG Canvas.lnk" "$INSTDIR\uninstall.exe"
109 WriteUninstaller "$INSTDIR\uninstall.exe"
110 ${EnvVarUpdate} $0 "PATH" "A" "HKCU" "$INSTDIR\bin"
111 SectionEnd
113 Section "Support for languages" SecLanguages
114 SetOutPath "$INSTDIR\share\locale"
115 SectionEnd
117 ; Descriptions
119 LangString DESC_SecBase ${LANG_ENGLISH} "Base installation for running the demo program."
120 LangString DESC_SecBase ${LANG_ITALIAN} "Installazione di base per eseguire il programma dimostrativo."
121 LangString DESC_SecLanguages ${LANG_ENGLISH} "Enable support for languages other than english."
122 LangString DESC_SecLanguages ${LANG_ITALIAN} "Abilitazione del supporto a lingue diverse dall'inglese."
124 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
125 !insertmacro MUI_DESCRIPTION_TEXT ${SecBase} $(DESC_SecBase)
126 !insertmacro MUI_DESCRIPTION_TEXT ${SecLanguages} $(DESC_SecLanguages)
127 !insertmacro MUI_FUNCTION_DESCRIPTION_END
129 ; Uninstaller
131 Section "Uninstall"
132 Delete "$SMPROGRAMS\ADG Canvas\ADG Demonstration program.lnk"
133 Delete "$SMPROGRAMS\ADG Canvas\Uninstall ADG Canvas.lnk"
134 RMDir "$SMPROGRAMS\ADG Canvas"
136 Delete "$INSTDIR\bin\libgtk-3-*.dll"
137 Delete "$INSTDIR\bin\libgdk-3-*.dll"
138 Delete "$INSTDIR\bin\libgdk_pixbuf-2.0-*.dll"
139 Delete "$INSTDIR\bin\libatk-1.0-*.dll"
140 Delete "$INSTDIR\bin\libpangowin32-1.0-*.dll"
141 Delete "$INSTDIR\bin\libpangocairo-1.0-*.dll"
142 Delete "$INSTDIR\bin\libpango-1.0-*.dll"
143 Delete "$INSTDIR\bin\libcairo-*.dll"
144 Delete "$INSTDIR\bin\libpixman-1-*.dll"
145 Delete "$INSTDIR\bin\libgio-2.0-*.dll"
146 Delete "$INSTDIR\bin\libgobject-2.0-*.dll"
147 Delete "$INSTDIR\bin\libgmodule-2.0-*.dll"
148 Delete "$INSTDIR\bin\libgthread-2.0-*.dll"
149 Delete "$INSTDIR\bin\libglib-2.0-*.dll"
150 Delete "$INSTDIR\bin\libpng??-*.dll"
151 Delete "$INSTDIR\bin\libffi-*.dll"
152 Delete "$INSTDIR\bin\iconv.dll"
153 Delete "$INSTDIR\bin\libintl-*.dll"
154 Delete "$INSTDIR\bin\libexpat-*.dll"
155 Delete "$INSTDIR\bin\zlib1.dll"
156 Delete "$INSTDIR\bin\libcpml-1-*.dll"
157 Delete "$INSTDIR\bin\libadg-1-*.dll"
158 RMDir "$INSTDIR\bin"
160 Delete "$INSTDIR\share\glib-2.0\schemas\gschemas.compiled"
161 RMDir "$INSTDIR\share\glib-2.0\schemas"
162 RMDir "$INSTDIR\share\glib-2.0"
163 RMDir "$INSTDIR\share\locale"
164 RMDir "$INSTDIR\share"
166 Delete "$INSTDIR\adg-demo.exe"
167 Delete "$INSTDIR\adg-128.png"
168 Delete "$INSTDIR\adg-64.png"
169 Delete "$INSTDIR\adg-48.png"
170 Delete "$INSTDIR\adg-32.png"
171 Delete "$INSTDIR\adg-16.png"
172 Delete "$INSTDIR\adg-demo.ui"
173 Delete "$INSTDIR\uninstall.exe"
174 RMDir "$INSTDIR"
176 ${un.EnvVarUpdate} $0 "PATH" "R" "HKCU" "$INSTDIR\bin"
177 SectionEnd