From: Arno P. <ar...@pu...> - 2014-03-11 05:12:34
|
some quick comments from my side: XMLVM performs a static analysis of the Java classes needed for an application. This also determines which methods will need to be called via a vtable (for the C backend). If the application changes, this might have impact on the way the base class is generated (e.g., if the way a base class method is called changes). For the same reason the itable (interface jump table) and constant pool can potentially change between builds. It would be possible to significantly speed up compilation times if one were to generate a library that contains a cross-compiled version of all JRE classes. This would also require to disable the vtable/itable/constant pool optimizations. No static analysis would be necessary and the only classes to be cross-compiled would be the application itself. While this is possible, this is also *a lot* of work. This changes the whole build process and also requires changes to the generated Xcode project. Paul Poley suggested a way of using rsync to copy only files that have changed between builds. This will not speed up XMLVM but at least the following Xcode build. You can find his suggestion somewhere in the archives of this list. Another quick comment about the --target=xmlvm: this was never fully implemented. You can generate .xmlvm but there is no frontend (or InputProcess in XMLVM terms) to read these .xmlvm files. Sorry to be the bearer of bad news but there is no simple solution. Arno On 3/10/14, 6:38 PM, Steve Hannah wrote: > Thanks for the reply. I don't think static libraries on their own will > get me where I need to go. Have you created static libraries with the c > output of xmlvm? As far as I can tell there are a few aspects that > won't work nicely with this . eg constant pools. > > Currently the compile time from java source to running on the iOS > simulator can be upwards of 10 minutes. Even if a few java files are > changed most of the c files need to be regenerated. My goal is to get > recompilation to under 10 seconds. I've looked at the problem for a > while and believe I can do this. The xmlvm format was my first choice > for an intermediate format because of the ease of transforming XML. But > I can work with java source files also if this won't work. > > Static libraries may possible as a byproduct of what I will be doing but > I don't think they are a solution in themselves. > > Steve > > On Mar 10, 2014 6:20 PM, "Panayotis Katsaloulis" > <pan...@pa... <mailto:pan...@pa...>> wrote: > > I believe the answer to your problem should be to create a static > library instead. > This article might be of help - at least it is the only one that I > followed for my own projects and worked. > > http://www.raywenderlich.com/41377/creating-a-static-library-in-ios-tutorial > > > > > > On March 11, 2014 at 2:17:21 AM, Steve Hannah (st...@we... > <mailto:st...@we...>) wrote: > > I just want to check if this is supposed to be possible. > > > > Suppose I have a folder with .class files named "java-src". > > > > I run > > xmlvm --in=java-src --out=xmlvm-src --target=xmlvm > > > > Then at a later time > > > > xmlvm --in=xmlvm-src --out=c-src --target=posix > > or > > xmlvm --in=xmlvm-src --out=c-src --target=c > > > > etc.. > > > > Is this supposed to be possible? > > > > I'm working on improving build times by introducing some caching and > > eliminating inter-class dependencies. My first idea was to > generate .xmlvm > > files as an intermediate representation to treat as a cache. > However I am > > having difficulty generating anything from .xmlvm files. If this is > > supposed to be possible, I can provide stack traces etc... If > not, I'll > > proceed to attempt different strategies. > > > > Best regards > > > > Steve > > > ------------------------------------------------------------------------------ > > Learn Graph Databases - Download FREE O'Reilly Book > > "Graph Databases" is the definitive new guide to graph databases > and their > > applications. Written by three acclaimed leaders in the field, > > this first edition is now available. Download your free book today! > > > http://p.sf.net/sfu/13534_NeoTech_______________________________________________ > > xmlvm-users mailing list > > xml...@li... > <mailto:xml...@li...> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > -- > Panayotis > > > > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and > their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/13534_NeoTech > _______________________________________________ > xmlvm-users mailing list > xml...@li... > <mailto:xml...@li...> > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/13534_NeoTech > > > > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |