[Vm-dev] VM Maker: VMMaker.oscog-topa.2342.mcz

Eliot Miranda eliot.miranda at gmail.com
Tue Mar 6 04:59:03 UTC 2018


Hi Tobias,

   but why?  Including configuration.h before including platform files can do nothing to modify those platform files, and can do nothing to modify their effects.  But including it after can at least modify their effects.  Can you explaining n why you want to include config.h before the platform includes?

_,,,^..^,,,_ (phone)

> On Mar 5, 2018, at 6:06 PM, Tobias Pape <Das.Linux at gmx.de> wrote:
> 
> 
> If someone could translate the source and commit it, I shall be very thankful :)
> 
> Best regards
>    -Tobias
> 
>> On 06.03.2018, at 03:04, commits at source.squeak.org wrote:
>> 
>> 
>> Tobias Pape uploaded a new version of VMMaker to project VM Maker:
>> http://source.squeak.org/VMMaker/VMMaker.oscog-topa.2342.mcz
>> 
>> ==================== Summary ====================
>> 
>> Name: VMMaker.oscog-topa.2342
>> Author: topa
>> Time: 6 March 2018, 3:03:51.335169 am
>> UUID: fea20583-2134-4dfa-bd3a-aa47504642a5
>> Ancestors: VMMaker.oscog-akg.2341
>> 
>> The config should always come first.
>> 
>> =============== Diff against VMMaker.oscog-akg.2341 ===============
>> 
>> Item was changed:
>> ----- Method: VMPluginCodeGenerator>>emitCHeaderOn: (in category 'C code generator') -----
>> emitCHeaderOn: aStream
>>    "Write a C file header onto the given stream."
>> 
>>    aStream nextPutAll: (self fileHeaderVersionStampForSourceClass: pluginClass).
>>    aStream cr; cr.
>> 
>>    #('<math.h>' '<stdio.h>' '<stdlib.h>' '<string.h>' '<time.h>') reverseDo:
>>        [:hdr| self addHeaderFileFirst: hdr].
>> +    self addHeaderFileFirst: '"config.h"'. "Should always go first"
>> 
>>    "Additional header files; include C library ones first."
>>    self emitHeaderFiles: (headerFiles select: [:hdr| hdr includes: $<]) on: aStream.
>> 
>>    aStream cr; nextPutAll:'/* Default EXPORT macro that does nothing (see comment in sq.h): */
>> #define EXPORT(returnType) returnType
>> 
>> /* Do not include the entire sq.h file but just those parts needed. */
>> #include "sqConfig.h"            /* Configuration options */
>> #include "sqVirtualMachine.h"    /*  The virtual machine proxy definition */
>> #include "sqPlatformSpecific.h"    /* Platform specific definitions */
>> 
>> #define true 1
>> #define false 0
>> #define null 0  /* using ''null'' because nil is predefined in Think C */
>> #ifdef SQUEAK_BUILTIN_PLUGIN
>> # undef EXPORT
>> # define EXPORT(returnType) static returnType
>> #endif'; cr; cr.
>>    self addHeaderFile: '"sqMemoryAccess.h"'.
>>    "Additional header files; include squeak VM ones last"
>>    self emitHeaderFiles: (headerFiles reject: [:hdr| hdr includes: $<]) on: aStream.
>>    self maybePutPreambleFor: pluginClass on: aStream.
>>    aStream cr!
>> 
> 


More information about the Vm-dev mailing list