Here is a list of things we should try to do:

   - Propose and define model app layout (Makefile, GET, ...) under 
   osv-apps 
      - Typically each app has GET shell script, Makefile and module.py:
         - GET typically downloads ad puts source files into upstream 
         directory (sometimes using latest script)
         - Makefile typically does what needs to be done (sometime 
         compiles) and puts source files into install subdirectory (sometimes 
         usr.manifest is generated, sometime usr.manifest is pre-defined).
         - module.py is called to execute extra logic - sometimes to 
         generate usr.manifest, define cmdline and possibly multiple flavors 
      - This is somewhat documented in the README.md of osv-apps project 
      but is not clear enough and the apps are all over the place following 
this 
      loose convention and I am myself guilty of not following it (see 
      python2x/3x apps that do too much in GET). I doubt it is worth fixing 
      existing apps but I think we could improve the documentation in this area 
      and and possibly point to a good model app.
      - I know our build system (scripts/build and related python scripts) 
   is complicated enough. But it would be super nice to allow passing 
   parameters from scripts/build to app Makefile. The best use case for that 
   is building java9 (10,11,12 as well) JREs using jlink where it would be 
   nice to pass a list of JRE modules to incorporate - 
   see 
https://github.com/cloudius-systems/osv-apps/blob/master/openjdk9-zulu-java-base/Makefile#L26;
 
   I think there are many other apps that would benefit
   - Eliminate external - https://github.com/cloudius-systems/osv/issues/743
   - It would be nice to detail what to do to each subdirectory (I am not 
      positive we want to eliminate all - see x64/acpica)
   - Convert to CMakefile 
      - I am not sure how difficult it would be, but one benefit of it 
      would be the ability to load a project in IDEs like CLion that are able 
to 
      work with CMakefile,
   - Some apps (like python2x/python3x) pull most of the binaries from host 
   instead of re-compiling from scratch. It would be nice to have a shared 
   app/tool to build apps from host like that.

Feel free to add any other things you would like to be improved in the 
build system.

Waldek

   - 

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to