Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 6 August 2011 12:16, Jonas Maebe wrote: ... but the fact that they will ship FPC definitely serves as a testament to its quality :) Very cool! This is very good indeed! 10/10 to the FPC developers. :) -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://fpgui.sourceforge.net ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Arm Thumb2 - Stellaris status
Ok. Give me a week or so (very hectic schedule right now...) And I will see if I can't patch it up some. New to this - what is procedure to generate and submit patch set ? Thanks ! From: Florian Klämpfl flor...@freepascal.org To: FPC developers' list fpc-devel@lists.freepascal.org Sent: Sun, August 7, 2011 12:15:02 AM Subject: Re: [fpc-devel] Arm Thumb2 - Stellaris status Am 06.08.2011 13:35, schrieb John Clymer: Ok, maybe I'm missing something... I can compile and get a binary for an STM32F103RE. However, if I attempt for the STELLARIS target, I get an error. I see where the error is coming from in t_embed.pas. It looks like the t_embed.pas file is missing linking information for the Stellaris. Yes. arm embedded devices are only supported as far as somebody contributed the compiler and rtl support. Problem is: we don't have any chance to test it, so only users of these devices can contribute the support. Can someone confirm this is the case before I go on a wild chase changing things ? ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On Sun, Aug 7, 2011 at 5:59 AM, Graeme Geldenhuys graemeg.li...@gmail.com wrote: On 6 August 2011 12:16, Jonas Maebe wrote: ... but the fact that they will ship FPC definitely serves as a testament to its quality :) Very cool! This is very good indeed! 10/10 to the FPC developers. :) +1 Marcos Douglas ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
Jonas Maebe wrote: ...So it's just a stopgap solution for them until they have time to build their own ARM compiler... wow! The former state of the art compiler vendor (Borland/Inprise/Borland/Codegear/Emb...) is not able to produce a compiler of its own ;-) Regards, Bernd. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 07 Aug 2011, at 17:21, Bernd Mueller wrote: Jonas Maebe wrote: ...So it's just a stopgap solution for them until they have time to build their own ARM compiler... wow! The former state of the art compiler vendor (Borland/Inprise/Borland/Codegear/Emb...) is not able to produce a compiler of its own ;-) Going from a completely i386-specific code generator to an ARM code generator is a lot of work, especially if you at the same time also have to create a 64 bit code generator. It also took FPC several years to migrate from it's i386-specific design to a more generic one, and to subsequently add x86-64 and ARM support. Jonas___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 7 August 2011 17:29, Jonas Maebe wrote: Going from a completely i386-specific code generator to an ARM code generator is a lot of work, especially if you at the same time also have to create a 64 bit code generator. Maybe they should just call it quits on there compiler product, and at the same time save themselves a boat load of cash and time, and simply used FPC as their compiler, and then put their resources towards building a cross-platform developer tool chain around the FPC compiler (like IDE and GUI framework/bindings etc). Oh wait, they are already doing that for ARM. ;-) Makes you wonder, will they start submitting patches for FPC too? -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://fpgui.sourceforge.net ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
Graeme Geldenhuys wrote: On 7 August 2011 17:29, Jonas Maebe wrote: Going from a completely i386-specific code generator to an ARM code generator is a lot of work, especially if you at the same time also have to create a 64 bit code generator. Maybe they should just call it quits on there compiler product, and at the same time save themselves a boat load of cash and time, and simply used FPC as their compiler, and then put their resources towards building a cross-platform developer tool chain around the FPC compiler (like IDE and GUI framework/bindings etc). Oh wait, they are already doing that for ARM. ;-) they could even save more time, it they would use Lazarus ;-) Makes you wonder, will they start submitting patches for FPC too? I had the same thought. What happens, if their customers report bugs concerning the code generation? Are they competent enough to fix them? (I don't think so) Regards, Bernd. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
Makes you wonder, will they start submitting patches for FPC too? that was what I was wondering about as well. Why not participate in fpc/lazarus development and add the missing features (packages etc; some language features) or update the D7-isms to XE standards instead of doing it themselves? In exchange they would get the benefit of the x-platform bit. and when they are at it, they could then deploy their own additional packages/components/libraries/helpfiles with their packaged product. fpc might then even benefit from their x86 speedup knowledge and we could get rid of the comments delphi compiler is x times faster than fpc that pop up every once in a while. :-) kind regards, Dimitri Smits ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 07 Aug 2011, at 18:08, Bernd Mueller wrote: What happens, if their customers report bugs concerning the code generation? Are they competent enough to fix them? (I don't think so) I can't imagine why they wouldn't be able to do so. And I don't understand all this hostility towards Embarcadero. You can reword everything in just the same derogatory terms towards FPC developers when an LLVM backend or so is added (are they competent enough to fix bugs in LLVM if they find one, why don't they just drop FPC altogether and integrate everything into Clang, Are they too stupid to implement all those analyses, optimizations and register allocators directly into FPC, ...). Developers building on top of existing code to fill a gap they can't easily/immediately fill themselves is not a sign of incompetence. If anything, I consider it a sign of open mindedness. Jonas___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 07 Aug 2011, at 17:57, Graeme Geldenhuys wrote: Makes you wonder, will they start submitting patches for FPC too? I hope so. The main problem I see with that is that they would become somewhat tainted by the FPC source code if they do so, which may make it harder to work on their own compiler later on. As long as they don't start blatantly copying code from FPC into their own compiler (like some people did in the past with Delphi RTL code into the FPC RTL) I don't think anyone who has contributed to the compiler would really care if they learned a bunch of stuff from our code base, but of course they have lawyers who almost certainly will care a lot. This can of course be solved in various ways (have someone who normally does not work on their compiler work on ours, hire a someone temporarily to do that work, external contractor, ...). Jonas___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
In our previous episode, Jonas Maebe said: Jonas Maebe wrote: ...So it's just a stopgap solution for them until they have time to build their own ARM compiler... wow! The former state of the art compiler vendor (Borland/Inprise/Borland/Codegear/Emb...) is not able to produce a compiler of its own ;-) Going from a completely i386-specific code generator to an ARM code generator is a lot of work, especially if you at the same time also have to create a 64 bit code generator. It also took FPC several years to migrate from it's i386-specific design to a more generic one, and to subsequently add x86-64 and ARM support. And keep in mind that for Embarcadero it is not just a codegenerator, but also (at least) assembler, linker and probably debugger. (see the remark about XCode) ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
In our previous episode, Jonas Maebe said: I hope so. The main problem I see with that is that they would become somewhat tainted by the FPC source code if they do so, which may make it harder to work on their own compiler later on. As long as they don't start blatantly copying code from FPC into their own compiler (like some people did in the past with Delphi RTL code into the FPC RTL) I'm not sure that actually happened in all cases. It was a bubble, and internal frameworks in companies were quickly thrown together with whatever code available (and Delphi code being no problem since they had licenses), and later they were donated to FPC later. That doesn't meant it wasn't wrong, both the donating as the accepting party should have checked and noticed it. But that is something else then knowingly copying it. That being said, there is another bubble going on in Mobile, and we have to be very careful that such things don't happen again. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
they could even save more time, it they would use Lazarus ;-) That's the one part they - Embarcadero - are still miles ahead in productivity and reliability. Lazarus is workable - more than that - but still cannot compete with Delphi in productivity - but that of course is for Windows only. I use both, but I use an Delphi IDE for development. The second part might be their new framework. Still, it is good news and I rather like the idea of Delphi as a development environment for the FreePascal toolchain. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 7-8-2011 18:50, Jonas Maebe wrote: I hope so. The main problem I see with that is that they would become somewhat tainted by the FPC source code if they do so, which may make it harder to work on their own compiler later on. As long as they don't start blatantly copying code from FPC into their own compiler (like some people did in the past with Delphi RTL code into the FPC RTL) I don't think anyone who has contributed to the compiler would really care if they learned a bunch of stuff from our code base, but of course they have lawyers who almost certainly will care a lot. This can of course be solved in various ways (have someone who normally does not work on their compiler work on ours, hire a someone temporarily to do that work, external contractor, ...). Jonas___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel I would not be surpised at all if they have done so. After all, they really appreciated the clean-room stuff done on FPC's RTL. This might sound strange after legal threads, but that is how California works. They are still very capable of destroying parts of the FreePascal community, especially Lazarus, in at least the USA and based on their strong patent portfolio if they would take up legal action. This is something that should not be forgotten: see the Sun-Oracle- Sue you Google about Android. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 7 August 2011 18:08, Bernd Mueller wrote: they could even save more time, it they would use Lazarus ;-) I wouldn't mind them building a workable debugger for FPC. Makes you wonder, will they start submitting patches for FPC too? I had the same thought. What happens, if their customers report bugs concerning the code generation? Are they competent enough to fix them? (I don't think so) Florian, has anybody from Embarcadero approached you on this? I wonder if they know that any modifications they make to the FPC compiler must be made available as open-source? The compiler is GPL'ed after all. -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://fpgui.sourceforge.net ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 7 August 2011 18:50, Jonas Maebe wrote: Makes you wonder, will they start submitting patches for FPC too? I hope so. +1 At least for now FPC scored some bragging rights. :) The main problem I see with that is that they would become somewhat tainted A very valid point. own compiler later on. As long as they don't start blatantly copying code from FPC into their own compiler The problem is, how would we know? Nobody can see their compiler code. Good news is that any modifications or bug fixes they make, they will have to share. But then comes the second question, how do you monitor something like that? -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://fpgui.sourceforge.net ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 07 Aug 2011, at 20:42, Graeme Geldenhuys wrote: Good news is that any modifications or bug fixes they make, they will have to share. They only have to share them with their customers who get the binary (and even then only for nominal shipping and handling fees). Of course, those customers are then free to pass them along further, if they want to. And in practice, I can't imagine what advantage Embarcadero would have by not immediately publicly sharing any such changes rather than by going through such hoops. But then comes the second question, how do you monitor something like that? In general, you don't and just rely on the honour system. If you really suspect someone from copying code, you have to rely on reverse-engineering to figure things like that out. It would surprise me a lot if copy/pasting our compiler source code into their compiler and then adapting/debugging it would be much less work than immediately rewriting it though. Jonas___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
- Graeme Geldenhuys graemeg.li...@gmail.com schreef: Florian, has anybody from Embarcadero approached you on this? I wonder if they know that any modifications they make to the FPC compiler must be made available as open-source? The compiler is GPL'ed after all. contrary to popular belief, it is not so that if you GPL something, everyone gets your source (ie: the community; by way of give back). If you take a open source project ((L)GPL that is, not talking about MPL/MIT/BSD/...), and you modify it, then sell it, the licence does not require you to give away the source to everyone! Only to your customers(/competitors) who bought the program! Likewise, when you take such a project with such a licence, maybe even straight GPL, and modify it, but only use it in-house, then you owe nobody anything. (since the source is handed over to the client, ie: yourself) btw, I even believe that you can devise a licence that is GPL compatible (copyleft), but that disallows redistribution/resell. Like a bit of an NDA. kind regards, Dimitri Smits ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
In our previous episode, Dimitri Smits said: Florian, has anybody from Embarcadero approached you on this? I wonder if they know that any modifications they make to the FPC compiler must be made available as open-source? The compiler is GPL'ed after all. contrary to popular belief, it is not so that if you GPL something, everyone gets your source (ie: the community; by way of give back). If you take a open source project ((L)GPL that is, not talking about MPL/MIT/BSD/...), and you modify it, then sell it, the licence does not require you to give away the source to everyone! Only to your customers(/competitors) who bought the program! As Jonas said, those can pass it on freely. And due to the scale of an Embarcadero launch (it is not 3 or 4 private customers Embarcadero sells too) that is nearly the same. Likewise, when you take such a project with such a licence, maybe even straight GPL, and modify it, but only use it in-house, then you owe nobody anything. (since the source is handed over to the client, ie: yourself) btw, I even believe that you can devise a licence that is GPL compatible (copyleft), but that disallows redistribution/resell. Like a bit of an NDA. And what is that belief founded on? :-) Anyway, there are more gotchas. They could e.g. have stuff like linkerscripts in a external files, and since they are not GPLed, not deliver them. (as in the case of Microchip gcc, where all linker scripts and all headers for the (many) individual parts were not included). All being said, I wouldn't get my hope up. Most changes will probably be interoperability with their own toolchain. (e.g. I can imagine they change the cmdline module to be (more) dcc compat). And it is only a stopgap solution for an year. A handful of minor bugfixes is the best we can hope for. Personally I think bugreports from users themselves will be a bigger treasure than what the GPL will deliver. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 07 Aug 2011, at 22:00, Marco van de Voort wrote: Anyway, there are more gotchas. They could e.g. have stuff like linkerscripts in a external files, and since they are not GPLed, not deliver them. a) again, I have a really hard time imagining that the people at Embarcadero would go out of their way to share as little as possible as far as the compiler is concerned (which is what everyone here is theorizing about) b) at least the linker script example cannot happen, because Apple's linker simply does not support linker scripts Personally I think bugreports from users themselves will be a bigger treasure than what the GPL will deliver. I would not call bug reports treasure. Patches, maybe, but bug reports not. Especially for the iOS platform, which Apples makes very painful to develop for at a low level if you don't go the jailbreak way. Jonas ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
In our previous episode, Jonas Maebe said: Anyway, there are more gotchas. They could e.g. have stuff like linkerscripts in a external files, and since they are not GPLed, not deliver them. a) again, I have a really hard time imagining that the people at Embarcadero would go out of their way to share as little as possible as far as the compiler is concerned (which is what everyone here is theorizing about) Honestly, I don't know. For good or worse. I haven't seen much open source spirit from them yet. b) at least the linker script example cannot happen, because Apple's linker simply does not support linker scripts I named that example because it is a GPL cirumvention case that actually happened . Not because I expect it to happen in this case. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] New FPC Target: AROS
On Fri, August 5, 2011 22:21, Karoly Balogh wrote: Hi, On Fri, 5 Aug 2011, Karoly Balogh wrote: The problem with your example in particular that /System/Development as Amiga path is perfectly valid, as it means ../System/Development in POSIX path, not System:Development/ Having this in FExpand() affects all apps using the RTL on AROS, and can end with tons of random side effects. OK, lets clarify this. /System/Development can be interpreted both as Amiga path and Un*x path. As Un*x path it indeed can be translated to Amiga path System:Development/, but if it's an Amiga path, it can be translated to ../System/Development in Un*x. You simply cannot tell by parsing simply the input of FExpand inside FExpand, that what you should do there, as both are valid options. This is why a separate function is need to be added, where the context (the calling environment) requires the path conversion. OK, I see. The current FExpand implementation might allow even including it twice with two different contexts / conditional defines (although not within the same namespece/unit) if that is useful for your needs. The other option is obviously always converting the paths to the native format (and possibly back) in case of invocation from the foreign context as suggested by you. Native Amiga paths should be hopefully supported well by the existing FExpand implementation. However, if you find any issues, please provide the appropriate test cases (preferably as a diff to tfexpand.pp, but pairs input_path / expected_output together with description of the starting situation regarding the current directory, etc., are OK too) and I'll be happy to fix it. Tomas ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
Am 07.08.2011 18:27, schrieb Jonas Maebe: And I don't understand all this hostility towards Embarcadero. Indeed. People should be happy that there is a pretty large commercial vendor which provides an professional object pascal development environment. Even if one doesn't use it, one should be aware that it really helps to keep pascal (well, they call it Delphi ;)) a living language. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On 07-08-2011 20:42, Graeme Geldenhuys wrote: own compiler later on. As long as they don't start blatantly copying code from FPC into their own compiler The problem is, how would we know? Nobody can see their compiler code. Good news is that any modifications or bug fixes they make, they will have to share. But then comes the second question, how do you monitor something like that? If someone gets access to the Embacadero supplied compiler(and some of the professional people probably will), they can run a differential test suite run for ARM and see if they fixed any of the remaining problems :) ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel
Re: [fpc-devel] Delphi XE2 uses FPC for iOS target
On Mon, Aug 8, 2011 at 12:49 AM, Florian Klämpfl flor...@freepascal.orgwrote: Am 07.08.2011 18:27, schrieb Jonas Maebe: And I don't understand all this hostility towards Embarcadero. Indeed. People should be happy that there is a pretty large commercial vendor which provides an professional object pascal development environment. Even if one doesn't use it, one should be aware that it really helps to keep pascal (well, they call it Delphi ;)) a living language. Florian, as I suppose, when you started the compiler , it could not be possible to develop a compiler written in pascal without the turbo pascal? So not only the product inspired, it was also a tool to build all other things upon. By the way, is it possible that when Delphi and fpc are now officially friends :) the some official inter-discussion possible before introducing some important things or before changing some things? Or you don't think that it will be useful? Max ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel