[Vm-dev] windows 32/64-bit third-party library differences

Ben Coman btc at openinworld.com
Sun Dec 23 21:10:04 UTC 2018


On Mon, 24 Dec 2018 at 05:04, Ben Coman <btc at openinworld.com> wrote:

> To check the third-party lib builds worked without any interference from
> caching I turned that off...
>
> https://github.com/bencoman/opensmalltalk-vm/blob/win-freetype291-patch/.appveyor.yml#L97-L99
>
> I was then curious about the different build times between 32 & 64 bit
> builds...
> https://ci.appveyor.com/project/bencoman/opensmalltalk-vm/builds/21202023
>
> 28 min 55 sec  Environment: FLAVOR=pharo.cog.spur,   ARCH=win32x86,
> CYG_ROOT=C:\cygwin,   MINGW_ARCH=i686
> 32 min 49 sec  Environment: FLAVOR=pharo.sista.spur, ARCH=win32x86,
> CYG_ROOT=C:\cygwin,   MINGW_ARCH=i686
> 14 min 45 sec  Environment: FLAVOR=pharo.cog.spur,   ARCH=win64x64,
> CYG_ROOT=C:\cygwin64, MINGW_ARCH=x86_64
> 15 min 48 sec  Environment: FLAVOR=pharo.stack.spur, ARCH=win64x64,
> CYG_ROOT=C:\cygwin64, MINGW_ARCH=x86_64
>
> The general mechanism for building the third-party libs is downloading
> tar-files, so filtering on that shows...
>
> Search "tar " (38 hits in 5 files)
>   C:\Users\Ben\Downloads\FLAVOR=pharo.cog.spur, ARCH=win32x86.txt (10 hits)
> Line 489: [00:02:24] tar x -f
> ../../.thirdparty-cache/pkg-config-0.29.1.tar.gz -C build/third-party
> Line 658: [00:02:53] tar x -f ../../.thirdparty-cache/zlib-1.2.11.tar.gz
> -C build/third-party
> Line 722: [00:02:57] tar x -f ../../.thirdparty-cache/libpng-1.6.34.tar.gz
> -C build/third-party
> Line 1118: [00:04:09] tar x -f
> ../../.thirdparty-cache/freetype-2.9.1.tar.gz -C build/third-party
> Line 1273: [00:04:25] tar x -f
> ../../.thirdparty-cache/openssl-1.0.2l.tar.gz -C build/third-party
> Line 5143: [00:11:32] tar x -f
> ../../.thirdparty-cache/libssh2-1.7.0.tar.gz -C build/third-party
> Line 5504: [00:13:11] tar x -f
> ../../.thirdparty-cache/libgit2-v0.25.1.tar.gz -C build/third-party
> Line 5863: [00:15:39] tar x -f ../../.thirdparty-cache/SDL2-2.0.7.tar.gz
> -C build/third-party
> Line 6371: [00:18:50] tar x -f
> ../../.thirdparty-cache/pixman-0.34.0.tar.gz -C build/third-party
> Line 6935: [00:21:36] tar x -f ../../.thirdparty-cache/cairo-1.15.4.tar.xz
> -C build/third-party
>
>   C:\Users\Ben\Downloads\FLAVOR=pharo.sista.spur, ARCH=win32x86.txt (10
> hits)
> Line 489: [00:03:21] tar x -f
> ../../.thirdparty-cache/pkg-config-0.29.1.tar.gz -C build/third-party
> Line 658: [00:03:51] tar x -f
> ../../.thirdparty-cache/openssl-1.0.2l.tar.gz -C build/third-party
> Line 6652: [00:11:31] tar x -f
> ../../.thirdparty-cache/libssh2-1.7.0.tar.gz -C build/third-party
> Line 7013: [00:13:07] tar x -f
> ../../.thirdparty-cache/libgit2-v0.25.1.tar.gz -C build/third-party
> Line 7372: [00:16:09] tar x -f ../../.thirdparty-cache/SDL2-2.0.7.tar.gz
> -C build/third-party
> Line 7880: [00:19:23] tar x -f ../../.thirdparty-cache/zlib-1.2.11.tar.gz
> -C build/third-party
> Line 7944: [00:19:28] tar x -f
> ../../.thirdparty-cache/libpng-1.6.34.tar.gz -C build/third-party
> Line 8340: [00:20:43] tar x -f
> ../../.thirdparty-cache/freetype-2.9.1.tar.gz -C build/third-party
> Line 8495: [00:20:59] tar x -f
> ../../.thirdparty-cache/pixman-0.34.0.tar.gz -C build/third-party
> Line 9059: [00:23:34] tar x -f ../../.thirdparty-cache/cairo-1.15.4.tar.xz
> -C build/third-party
>
>   C:\Users\Ben\Downloads\FLAVOR=pharo.cog.spur, ARCH=win64x64.txt (4 hits)
> Line 489: [00:02:24] tar x -f
> ../../.thirdparty-cache/pkg-config-0.29.1.tar.gz -C build/third-party
> Line 659: [00:02:49] tar x -f
> ../../.thirdparty-cache/openssl-1.0.2l.tar.gz -C build/third-party
> Line 2640: [00:09:41] tar x -f ../../.thirdparty-cache/SDL2-2.0.7.tar.gz
> -C build/third-party
> Line 3150: [00:13:01] tar x -f ../../.thirdparty-cache/zlib-1.2.11.tar.gz
> -C build/third-party
>
>   C:\Users\Ben\Downloads\FLAVOR=pharo.stack.spur, ARCH=win64x64.txt (4
> hits)
> Line 489: [00:02:00] tar x -f
> ../../.thirdparty-cache/pkg-config-0.29.1.tar.gz -C build/third-party
> Line 659: [00:02:25] tar x -f
> ../../.thirdparty-cache/openssl-1.0.2l.tar.gz -C build/third-party
> Line 2640: [00:08:44] tar x -f ../../.thirdparty-cache/SDL2-2.0.7.tar.gz
> -C build/third-party
> Line 3150: [00:12:05] tar x -f ../../.thirdparty-cache/zlib-1.2.11.tar.gz
> -C build/third-party
>
> So why is the difference in libraries being built between 32 & 64 bit?
> Here is one example...
>
> https://github.com/bencoman/opensmalltalk-vm/blob/win-freetype291-patch/build.win32x86/third-party/Makefile.freetype2
>
> https://github.com/bencoman/opensmalltalk-vm/blob/win-freetype291-patch/build.win64x64/third-party/Makefile.freetype2
>

btw, I see this...
$ grep -r "copy dependency from mingw distribution" build.win64x64/
build.win64x64/third-party/Makefile.cairo:# Instead build, copy dependency
from mingw distribution
build.win64x64/third-party/Makefile.freetype2:# Instead build, copy
dependency from mingw distribution
build.win64x64/third-party/Makefile.libgit2:# Instead build, copy
dependency from mingw distribution
build.win64x64/third-party/Makefile.libpng:# Instead build, copy dependency
from mingw distribution
build.win64x64/third-party/Makefile.libssh2:# Instead build, copy
dependency from mingw distribution
build.win64x64/third-party/Makefile.pixman:# Instead build, copy dependency
from mingw distribution

cheers -ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20181224/defb3ee1/attachment-0001.html>


More information about the Vm-dev mailing list