[Vm-dev] linux minheadless pharo vm builds itimer or heartbeat?

Ronie Salgado roniesalg at gmail.com
Thu Jul 18 14:56:12 UTC 2019


Hi Alistair,

That is a bug that I have to fix. Currently, it is only using and old
version of the threaded heartbeat. This because of the intentional
duplication of code that I did originally when doing the minheadless VM:
1.- Remove everything.
2.- Stub all of the platform specific code
3.- Compile and fix linking errors by adding the platform specific code.

Now the missing step is to remove this code duplication by merging the code
of the minheadless VM with the normal VM. The main problem of fixing this
is that I will need to coordinate with the rest of the VM community on what
is the best course of action. In my opinion, I think that the correct way
for doing this is to use the minheadless VM as the core VM, and support the
different windowing systems by refactoring the code in folders under the
platforms/minheadless/

Best regards,
Ronie

El jue., 18 jul. 2019 a las 10:11, Alistair Grant (<akgrant0710 at gmail.com>)
escribió:

>
> Hi All,
>
> Are Pharo linux minheadless builds itimer or threaded heartbeat?
>
> (all the listings below are extracts, not the complete file / page)
>
> The file list on bintray suggests that they are itimer:
>
> https://bintray.com/opensmalltalk/vm/cog/201907112020#files
>
> pharo.cog.spur+sdl2-cmake-minhdls_linux64x64_itimer_201907112020.tar.gz
> 6 days ago 4.23 MB
> pharo.cog.spur-cmake-minhdls_linux64x64_itimer_201907112020.tar.gz 6
> days ago 4.22 MB
>
>
> While travis indicates that only threaded heartbeat versions are built:
>
> https://travis-ci.org/OpenSmalltalk/opensmalltalk-vm/builds/553922116
>
> Setting environment variables from .travis.yml
> $ export ARCH="linux64x64"
> $ export FLAVOR="pharo.cog.spur"
> $ export CPU_ARCH="x64"
> $ export HEARTBEAT="threaded"
> $ export BUILD_WITH_CMAKE="yes"
>
>
> .travis.yml agrees with the travis output:
>
>   - stage: "Minheadless CMake builds"
>   - env: ARCH="linux32x86" FLAVOR="pharo.cog.spur" CPU_ARCH="x86"
> HEARTBEAT="threaded" BUILD_WITH_CMAKE="yes"
>   - env: ARCH="linux64x64" FLAVOR="pharo.cog.spur" CPU_ARCH="x64"
> HEARTBEAT="threaded" BUILD_WITH_CMAKE="yes"
>
>
> And pack-vm.sh seems to be doing the right thing when determining how
> to name the archive:
>
>   for dir in */; do
>     if [[ "${ARCH}" == *"ARM"* || "${dir}" == *"ht/" ]]; then
>       name="${IDENTIFIER}"
>     else
>       name="${IDENTIFIER_ITIMER}"
>     fi
>
>
> Unfortunately figuring out which VM is being used isn't helped by the
> fact that "pharo --version" doesn't work with minheadless:
>
> $ ./pharo --version
> Opening Image: --version
> Opening Image: No such file or directory
> Error opening image file: --version
>
>
> Thanks,
> Alistair
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20190718/4f6d8073/attachment.html>


More information about the Vm-dev mailing list