Commit 64e8f328b4369e3d6e97fe043dbe3e2dc2e92578
1 parent
9e65069e
Exists in
master
and in
5 other branches
Working on windows package.
Showing
2 changed files
with
68 additions
and
5 deletions
Show diff stats
win/pack.sh
@@ -4,7 +4,7 @@ PRODUCT_NAME="pw3270" | @@ -4,7 +4,7 @@ PRODUCT_NAME="pw3270" | ||
4 | LIBRARY_NAME="lib3270" | 4 | LIBRARY_NAME="lib3270" |
5 | CORE_LIBRARIES="lib3270 libv3270" | 5 | CORE_LIBRARIES="lib3270 libv3270" |
6 | PACKAGE_PLUGINS="ipc" | 6 | PACKAGE_PLUGINS="ipc" |
7 | -PACKAGE_LANGUAGE_BINDINGS="hllapi" | 7 | +PACKAGE_LANGUAGE_BINDINGS="hllapi mono" |
8 | TARGET_ARCHS="x86_64" | 8 | TARGET_ARCHS="x86_64" |
9 | GIT_URL="https://github.com/PerryWerneck" | 9 | GIT_URL="https://github.com/PerryWerneck" |
10 | 10 | ||
@@ -133,8 +133,15 @@ buildLibrary() | @@ -133,8 +133,15 @@ buildLibrary() | ||
133 | 133 | ||
134 | esac | 134 | esac |
135 | 135 | ||
136 | + # Required for lib3270 build tools | ||
136 | export HOST_CC=/usr/bin/gcc | 137 | export HOST_CC=/usr/bin/gcc |
137 | 138 | ||
139 | + # Required for .NET bindings | ||
140 | + export GACROOT=${WORKDIR}/build/${ARCH}/mono/gacroot | ||
141 | + export GAPIROOT=${WORKDIR}/build/${ARCH}/mono/gapi-2.0 | ||
142 | + export MONOLIBPATH=${WORKDIR}/build/${ARCH}/mono/lib | ||
143 | + | ||
144 | + # Create install dirs | ||
138 | mkdir -p ${WORKDIR}/build/${ARCH} | 145 | mkdir -p ${WORKDIR}/build/${ARCH} |
139 | mkdir -p ${WORKDIR}/cache/${ARCH} | 146 | mkdir -p ${WORKDIR}/cache/${ARCH} |
140 | mkdir -p ${WORKDIR}/build/${ARCH}/locale | 147 | mkdir -p ${WORKDIR}/build/${ARCH}/locale |
@@ -363,11 +370,11 @@ makeInstaller() | @@ -363,11 +370,11 @@ makeInstaller() | ||
363 | { | 370 | { |
364 | NSIS_ARGS="-DWITHGTK" | 371 | NSIS_ARGS="-DWITHGTK" |
365 | 372 | ||
366 | - if [ ! -z ${PACKAGE_PLUGINS} ]; then | 373 | + if [ ! -z "${PACKAGE_PLUGINS}" ]; then |
367 | NSIS_ARGS="${NSIS_ARGS} -DWITHPLUGINS" | 374 | NSIS_ARGS="${NSIS_ARGS} -DWITHPLUGINS" |
368 | fi | 375 | fi |
369 | 376 | ||
370 | - if [ ! -z ${PACKAGE_LANGUAGE_BINDINGS} ]; then | 377 | + if [ ! -z "${PACKAGE_LANGUAGE_BINDINGS}" ]; then |
371 | NSIS_ARGS="${NSIS_ARGS} -DWITHLANGUAGE" | 378 | NSIS_ARGS="${NSIS_ARGS} -DWITHLANGUAGE" |
372 | fi | 379 | fi |
373 | 380 |
win/pw3270.nsi.in
@@ -162,11 +162,27 @@ SubSection "@PACKAGE@" SecMain | @@ -162,11 +162,27 @@ SubSection "@PACKAGE@" SecMain | ||
162 | setOutPath $INSTDIR | 162 | setOutPath $INSTDIR |
163 | 163 | ||
164 | ${DisableX64FSRedirection} | 164 | ${DisableX64FSRedirection} |
165 | + file "/oname=$SYSDIR\hllapi.dll" "libhllapi.dll" | ||
166 | + | ||
167 | + # Install with "lib" prefix for compatibility. | ||
165 | file "/oname=$SYSDIR\libhllapi.dll" "libhllapi.dll" | 168 | file "/oname=$SYSDIR\libhllapi.dll" "libhllapi.dll" |
166 | 169 | ||
167 | sectionEnd | 170 | sectionEnd |
168 | !endif | 171 | !endif |
169 | 172 | ||
173 | +!ifdef WITHMONO | ||
174 | + Section /o ".NET" DOTNET | ||
175 | + | ||
176 | + ${DisableX64FSRedirection} | ||
177 | + CreateDirectory "$INSTDIR\dotnet" | ||
178 | + | ||
179 | + file "/oname=$INSTDIR\dotnet\tn3270-sharp.dll" "mono/lib/tn3270-sharp-5.2/tn3270-sharp.dll" | ||
180 | + file "/oname=$INSTDIR\dotnet\pw3270-sharp.xml" "mono/gapi-2.0/tn3270-sharp/tn3270-sharp.xml" | ||
181 | + file "/oname=$SYSDIR\lib3270-mono.dll" "lib3270-mono.dll" | ||
182 | + | ||
183 | + sectionEnd | ||
184 | +!endif | ||
185 | + | ||
170 | SubSectionEnd | 186 | SubSectionEnd |
171 | !endif | 187 | !endif |
172 | 188 | ||
@@ -234,7 +250,14 @@ Section "Uninstall" | @@ -234,7 +250,14 @@ Section "Uninstall" | ||
234 | DeleteRegKey HKLM "Software\@PACKAGE@" | 250 | DeleteRegKey HKLM "Software\@PACKAGE@" |
235 | 251 | ||
236 | # Delete System libraries | 252 | # Delete System libraries |
253 | +!ifdef WITHHLLAPI | ||
237 | delete $SYSDIR\libhllapi.dll | 254 | delete $SYSDIR\libhllapi.dll |
255 | + delete $SYSDIR\hllapi.dll | ||
256 | +!endif | ||
257 | + | ||
258 | +!ifdef WITHMONO | ||
259 | + delete $SYSDIR\lib3270-mono.dll | ||
260 | +!endif | ||
238 | 261 | ||
239 | RMDir /r "$INSTDIR" | 262 | RMDir /r "$INSTDIR" |
240 | 263 | ||
@@ -242,6 +265,38 @@ SectionEnd | @@ -242,6 +265,38 @@ SectionEnd | ||
242 | 265 | ||
243 | Function .onInit | 266 | Function .onInit |
244 | 267 | ||
268 | + #---[ Check DOTNET Command line option ]0------------------------------------------------------------- | ||
269 | + | ||
270 | +!ifdef WITHMONO | ||
271 | + Push $0 | ||
272 | + | ||
273 | + ${GetParameters} $R0 | ||
274 | + ClearErrors | ||
275 | + ${GetOptions} $R0 /DOTNET= $0 | ||
276 | + | ||
277 | + ${if} $0 == "NO" | ||
278 | + | ||
279 | + SectionGetFlags ${DOTNET} $0 | ||
280 | + IntOp $0 $0 & ${SECTION_OFF} | ||
281 | + SectionSetFlags ${DOTNET} $0 | ||
282 | + | ||
283 | + ${else} | ||
284 | + | ||
285 | + SectionGetFlags ${DOTNET} $0 | ||
286 | + IntOp $0 $0 | ${SF_SELECTED} | ||
287 | + SectionSetFlags ${DOTNET} $0 | ||
288 | + | ||
289 | +!ifdef WITHIPC | ||
290 | + SectionGetFlags ${IPCPlugin} $0 | ||
291 | + IntOp $0 $0 | ${SF_SELECTED} | ||
292 | + SectionSetFlags ${IPCPlugin} $0 | ||
293 | +!endif | ||
294 | + | ||
295 | + ${EndIf} | ||
296 | + | ||
297 | + Pop $0 | ||
298 | +!endif | ||
299 | + | ||
245 | #---[ Check HLLAPI Command line option ]------------------------------------------------------------- | 300 | #---[ Check HLLAPI Command line option ]------------------------------------------------------------- |
246 | 301 | ||
247 | !ifdef WITHHLLAPI | 302 | !ifdef WITHHLLAPI |
@@ -276,9 +331,10 @@ Function .onInit | @@ -276,9 +331,10 @@ Function .onInit | ||
276 | 331 | ||
277 | !endif | 332 | !endif |
278 | 333 | ||
279 | -!ifdef WITHGTK | ||
280 | 334 | ||
281 | - #---[ Verifica se precisa instalar GTK ]------------------------------------------------------------- | 335 | + #---[ Check for GTK runtime ]------------------------------------------------------------------------ |
336 | + | ||
337 | +!ifdef WITHGTK | ||
282 | 338 | ||
283 | SetRegView @WINARCH@ | 339 | SetRegView @WINARCH@ |
284 | 340 |