windows 32/64-bit third-party library differences

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

windows 32/64-bit third-party library differences

Ben Coman
 
To check the third-party lib builds worked without any interference from caching I turned that off...

I was then curious about the different build times between 32 & 64 bit builds...
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...

cheers -ben
Reply | Threaded
Open this post in threaded view
|

Re: windows 32/64-bit third-party library differences

Ben Coman
 
On Mon, 24 Dec 2018 at 05:04, Ben Coman <[hidden email]> wrote:
To check the third-party lib builds worked without any interference from caching I turned that off...

I was then curious about the different build times between 32 & 64 bit builds...
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...

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