[Vm-dev] Compiling Interpreter VM on FreeBSD

Frank Shearar frank.shearar at gmail.com
Wed Jan 2 20:37:50 UTC 2013


On 2 January 2013 20:33, Eliot Miranda <eliot.miranda at gmail.com> wrote:
>
> Hi Frank,
>
>     I *think* this is fixed in the Cog branch.  If you have time and could compile the Cog version I'd appreciate it.  The fix would then be just to copy the Cog version across.

Thanks, Eliot. I was setting up a Cog-on-fbsd CI job while I waited,
so hopefully I can get back to you soon!

frank

> On Wed, Jan 2, 2013 at 11:22 AM, Frank Shearar <frank.shearar at gmail.com> wrote:
>>
>>
>> I'm setting up more CI jobs, this time to give FreeBSD some love. So I
>> have a script that gets the bleeding edge Interpreter source, cd
>> platform/unix; make. The results are here:
>> http://squeakci.org/job/InterpreterVM-FreeBSD/13/console
>>
>> The punchline is that compilation fails thusly:
>>
>> In file included from
>> /usr/home/frank/temp/jenkins/workspace/InterpreterVM-FreeBSD/target/Squeak-vm-unix-4.10.7-2646-unofficial-src/platforms/unix/plugins/UUIDPlugin/sqUnixUUID.c:9:
>> /usr/local/include/uuid/uuid.h:44: error: conflicting types for 'uuid_t'
>> /usr/include/sys/uuid.h:74: error: previous declaration of 'uuid_t' was here
>> /usr/home/frank/temp/jenkins/workspace/InterpreterVM-FreeBSD/target/Squeak-vm-unix-4.10.7-2646-unofficial-src/platforms/unix/plugins/UUIDPlugin/sqUnixUUID.c:
>> In function 'MakeUUID':
>> /usr/home/frank/temp/jenkins/workspace/InterpreterVM-FreeBSD/target/Squeak-vm-unix-4.10.7-2646-unofficial-src/platforms/unix/plugins/UUIDPlugin/sqUnixUUID.c:29:
>> warning: passing argument 1 of 'uuidgen' from incompatible pointer
>>
>> The relevant source is here:
>>
>>
>> int MakeUUID(char *location)
>> {
>> #if defined(HAVE_UUID_CREATE) && !defined(HAVE_UUIDGEN) &&
>> !defined(HAVE_UUID_GENERATE)
>>   size_t  len= 16;      /* 128 bits */
>>   uuid_t *uuid;
>>   uuid_create(&uuid);
>>   uuid_make(uuid, UUID_MAKE_V1);
>>   uuid_export(uuid, UUID_FMT_BIN, (void **)&location, &len);
>>   uuid_destroy(uuid);
>> #else
>>   uuid_t uuid;
>> #  if defined(HAVE_UUIDGEN)
>>   uuidgen(&uuid, 1);   // <-- this is line 29, the offender
>> #  elif defined(HAVE_UUID_GENERATE)
>>   uuid_generate(uuid);
>> #  endif
>>   memcpy((void *)location, (void *)&uuid, sizeof(uuid));
>> #endif
>>   return 1;
>> }
>>
>> Any ideas? I'm happy to do legwork, but Bozhe moi! This I know from nothing!
>>
>> frank
>
>
>
>
> --
> best,
> Eliot
>


More information about the Vm-dev mailing list