Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Dec 22 2016 22:54
    FredStober commented #5
  • Dec 22 2016 22:54
    FredStober commented #5
  • Dec 22 2016 03:19
    sakubara edited #5
  • Dec 21 2016 17:28
    sakubara opened #5
  • Dec 21 2016 16:25
    sakubara commented #4
  • Dec 21 2016 15:45
    FredStober commented #4
  • Dec 21 2016 15:45
    FredStober commented #4
  • Dec 21 2016 15:44
    FredStober closed #4
  • Dec 21 2016 15:44
    FredStober commented #4
  • Dec 21 2016 15:42

    FredStober on master

    version bump to 0.2.11 (compare)

  • Dec 21 2016 15:42

    FredStober on 0.2.10

    (compare)

  • Dec 21 2016 15:26

    FredStober on master

    fixed code review issue (compare)

  • Dec 21 2016 15:24

    FredStober on master

    Improved version parsing Added special version parser fo… added option to customize versi… (compare)

  • Dec 21 2016 05:38
    sakubara opened #4
  • Dec 14 2016 19:12

    FredStober on master

    fixed match_libs Added option to add optional ro… (compare)

  • Dec 14 2016 19:04

    FredStober on master

    Fixed testsuite templates (compare)

  • Dec 14 2016 18:57

    FredStober on master

    Improved library path discovery Added method to collect all lib… Added documentation for match_l… (compare)

  • Dec 14 2016 17:04

    FredStober on master

    Fixed typo in documentation (compare)

  • Dec 14 2016 17:02

    FredStober on 0.2.9

    (compare)

  • Dec 14 2016 17:02

    FredStober on 0.2.8

    (compare)

byzantic
@byzantic
Hi Fred, Are you still working on pyrate? I'm trying to get started and I have a few questions that are not covered in the documentation
Fred Stober
@FredStober
Hi! I'm using pyrate for my private projects and it's working fine for my own use cases.
However, I'm busy with other projects at the moment, so I don't have much time to improve pyrate at the moment.
byzantic
@byzantic
Hi Fred, OK, sure, I understand. All the best.
Fred Stober
@FredStober
However if your questions just concern clarifying the documentation, I can do that ...
byzantic
@byzantic
OK, well the first thing to say is that the reason I'm looking at pyrate (and a few other systems as well, is that standard systems don't really meet my needs. In the past I have rolled my own using Make, and I can do that to my satisfaction for fairly complex C/C++ projects. However, I work on embedded systems all the way from chip design to programming, and this has the following consequences.
  1. I need to be able to easily customise toolchains. This may simply be replacing 'gcc' with 'arm-eabi-none-gcc', or it might not use gcc-compatible flags at all. So ease of customisation is paramount.
  1. I don't build monolithic projects. An embedded micro project might support multiple different hardware platforms, each with different versions of peripheral support code, and different options. So I need to describe builds in a hierarchical way; that is, each code module is described by it's own sub-project file, and these get pulled together by top-level descriptor files. Currently I have several of these in a project at the same time, in order to cope with the different builds.
byzantic
@byzantic
I suspect (1) would be trivial for gcc derivatives, but maybe a lot more difficult for completely different tools.
I suspect (2) - the hierarchical approach, might be tricky. I get the impression that you tend to build a single project/executable at a ime.
The reason I was interested is that pyrate seems to be a fairly simple layer over the top of ninja, and hence more amenable to customisation (by myself). However, I think on further investigation, it would require too much of your time to get me up to speed on understanding the internals. Time which I think you do not have, especially if you are working on the current run at the LHC!
Fred Stober
@FredStober
Hi again - had to leave for something ...
For 1) A toolchain in pyrate is just a collection of externals, which provide rules to process files - as long as the tool chain can be described in terms of "output file X is generated using rule Y and input Z", it is possible to model the compilation process (see here
https://github.com/pyrate-build/pyrate-build/blob/65a8c553446ed186769533e2a8afe695902099e9/pyrate.py#L1317) - if the workflow to create the executables / libs is more complicated, it will be hard ....
For 2) you might want to take a look at the example directory - the "project1" directory contains an example for a hierarchical project.
All my projects are usually are ordered in such a way that they have libs that can be compiled standalone - therefore the pyrate make files of sub directories are designed to be used standalone or by some parent project.
Fred Stober
@FredStober
And finally: Idd, I'm working on some analysis using the latest LHC data, so there is lots of stuff to do :)
byzantic
@byzantic
Thanks Fred! I will have a look at the code. And now, I'll leave you in peace ..