LongDirtyAnimAlf / Reiniero-fpcup

fpcup (and fpclazup) are installers for FPC (and Lazarus).
52 stars 10 forks source link

Pass CPU+OS_SOURCE to make during FPCNative builds #37

Closed martok closed 6 years ago

martok commented 6 years ago

This change allows using a crossompiler binary to bootstrap a native compiler. We only need to pass SOURCE to get the correct include paths, as TARGET is set by the compiler itself (same as old behaviour). Nothing changes if the source compiler is already native, it would have the values explicitly set here by default anyway.

Fixes the issue mentioned in the first comment on #36.

LongDirtyAnimAlf commented 6 years ago

Thanks for this analysis !

Question: Do you suggest using a 32bit bootstrapper to build 64bit on Windows ? This would make life easy for me: the recursive build of a bootstrapper would mean a lot of code-changes.

martok commented 6 years ago

It appears to be working, but I'm not sure if that approach is terribly useful for other platforms?

What I currently do: use fpclazup-i386-win32 to build 3.0.2 ppcrossx64 (bootstraps from online 3.0.0), rename that as ppcx64 to fpcbootstrap\. Then to build trunk I call (patched) fpclazup-x86_64-win64 which recognizes this compiler and compiles a native 3.1.1. ppcx64. I think that only works on Windows-to-Windows situations?

LongDirtyAnimAlf commented 6 years ago

Well, fpcup(deluxe) is designed to give the user an easy install-experience. So, I have added a lot of 3.0.4 bootstrappers ! Especially for trunk. https://github.com/newpascal/fpcupdeluxe/releases/tag/bootstrappers_v1.0

This should give the user the easy experience again. I am not going to wait for FPC core to add bootstrappers. Also, they are against it a bit.

martok commented 6 years ago

When is that collection checked when fpcup looks for a bootstrapper? It should probably before starting to build from source?

LongDirtyAnimAlf commented 6 years ago

Please re-open is issues reported are still there !