Rogier-5 / minetest-mapper-cpp

Generates maps of minetest and freeminer worlds
Other
9 stars 4 forks source link

Wip msvc compile #12

Closed adrido closed 8 years ago

adrido commented 8 years ago

There are still further tests needed if the gen-build-config.bat is executed without git. With git it works good, and produces now usable files. With this changes it will be able again to compile and run.

adrido commented 8 years ago

I found another Problem: The digital version number is split into WORD.WORD.WORD.WORD As you already said 1 WORD equals 4 Bytes, the highest value you can use in each WORD is 65535 = 0xFFFF. So the major version 150310 = 0x24B26 would require a DWORD so its cut to 0x4B26 = 19238.

I would suggest to use a version system like YYYY.MMDD.NN.CCCC or you switch to something like Semantic Versioning versioninfo

Rogier-5 commented 8 years ago

I found another Problem: The digital version number is split into WORD.WORD.WORD.WORD As you already said 1 WORD equals 4 Bytes, the highest value you can use in each WORD is 65535 = 0xFFFF. So the major version 150310 = 0x24B26 would require a DWORD so its cut to 0x4B26 = 19238.

Ehhhm... YYMMDD is 6 digits indeed, and not 5 as I assumed for some obscure reason :-( I'll fix it.

I would suggest to use a version system like YYYY.MMDD.NN.CCCC or you switch to something like Semantic Versioning That would probably be better. I have been thinking about switching to a.b.c version numbers. I purposely chose to set the first WORD to 0, to be forward-compatible in case of a future switch.

For the moment, I'll take a quick and simple-minded approach (0.DATE.NN.CCCC, where DATE = YY * 1024 + MM * 32 + DD. Then I'll have to switch to semantic versioning sometime before the year 2065 :-)

Rogier-5 commented 8 years ago

I pushed some more changes. Hopefully without any regressions.

adrido commented 8 years ago

the batch file exits now with just "Syntaxerror."

Ill try to debug and fix.

I pushed some more changes. Hopefully without any regressions.

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/Rogier-5/minetest-mapper-cpp/pull/12#issuecomment-220948785

adrido commented 8 years ago

Another question: What do you want to do in the lines around ~256? I'm asking because it does not generate a build-config.h and I would like to know how it should work if it would work. And I does not really understand what was your intention with that lines.


    IF %$TEST%==1 (
        ECHO The build config file ^(%$BUILDCONFIG_FILE%^) contents would be^:
        CALL SET "$INDENT=    "
        SET $OUTPUT=CON
    )

    COPY NUL %$OUTPUT%

:confused:

Rogier-5 commented 8 years ago

the batch file exits now with just "Syntaxerror."

:-(

I added some more '^' in ECHO statements. Hopefully that helps.

I don't know exactly what the rules are, but some characters were escaped in some places, and not in others.

Rogier-5 commented 8 years ago

Another question: What do you want to do in the lines around ~256? I'm asking because it does not generate a build-config.h and I would like to know how it should work if it would work. And I does not really understand what was your intention with that lines.


  IF %$TEST%==1 (
      ECHO The build config file ^(%$BUILDCONFIG_FILE%^) contents would be^:
      CALL SET "$INDENT=    "
      SET $OUTPUT=CON
  )

  COPY NUL %$OUTPUT%

If TEST is 1 (i.e. the option --test was given), then print the contents of the config files to the console instead of creating the files.