Alexander Benikowski via llvm-dev
2016-Sep-09 09:11 UTC
[llvm-dev] [RFC] One or many git repositories?
I'd vote for having each component in a seperated Repository and using a Monorepo with Submodules to work with. Since CLang depends on LLVM but not vice versa (if i am not mistaken. I'm new here), i'd prefer to just work with the LLVM repo if it is desired. 2016-09-08 21:49 GMT+02:00 Renato Golin via llvm-dev < llvm-dev at lists.llvm.org>:> On 8 September 2016 at 19:37, Mehdi Amini via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > I'd expect a cmake shortcut cmake > > -DLLVM_ENABLE_PROjECTS=clang,libcxx,compiler-rt > > Hey, I like this idea! > > In that case, we don't need the directories in any particular > location, as CMake would be able to find and link any place *we* want > to put them in (in tree, flat out) and pull out their CMake files. > > This would also help each project to be built in its own, if they so > require, without upsetting the LLVM-canon build style. > > cheers, > --renato > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160909/babf1e2c/attachment.html>
Renato Golin via llvm-dev
2016-Sep-09 10:18 UTC
[llvm-dev] [RFC] One or many git repositories?
On 9 September 2016 at 10:11, Alexander Benikowski <sebal007 at googlemail.com> wrote:> I'd vote for having each component in a seperated Repository and using a > Monorepo with Submodules to work with. > Since CLang depends on LLVM but not vice versa (if i am not mistaken. I'm > new here), i'd prefer to just work with the LLVM repo if it is desired.This is one of the options, yes. We currently have two proposals, sub-modules and mono-repo. This thread is about the mono-repo only. The sub-modules one does exactly what you describe, and will be proposed at the same time as the mono-repo on the survey we'll create, when you'll have opportunity to express your views. cheers, --renato
Mehdi Amini via llvm-dev
2016-Sep-09 14:11 UTC
[llvm-dev] [RFC] One or many git repositories?
> On Sep 9, 2016, at 2:11 AM, Alexander Benikowski <sebal007 at googlemail.com> wrote: > > I'd vote for having each component in a seperated Repository and using a Monorepo with Submodules to work with. > Since CLang depends on LLVM but not vice versa (if i am not mistaken. I'm new here), i'd prefer to just work with the LLVM repo if it is desired.Can you elaborate why and what kind of workflow you have that would benefit from this? Also did you read the document I sent with the examples? -- Mehdi> > 2016-09-08 21:49 GMT+02:00 Renato Golin via llvm-dev <llvm-dev at lists.llvm.org>: >> On 8 September 2016 at 19:37, Mehdi Amini via llvm-dev >> <llvm-dev at lists.llvm.org> wrote: >> > I'd expect a cmake shortcut cmake >> > -DLLVM_ENABLE_PROjECTS=clang,libcxx,compiler-rt >> >> Hey, I like this idea! >> >> In that case, we don't need the directories in any particular >> location, as CMake would be able to find and link any place *we* want >> to put them in (in tree, flat out) and pull out their CMake files. >> >> This would also help each project to be built in its own, if they so >> require, without upsetting the LLVM-canon build style. >> >> cheers, >> --renato >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160909/aee393a8/attachment.html>
Alexandre Isoard via llvm-dev
2016-Sep-09 14:22 UTC
[llvm-dev] [RFC] One or many git repositories?
What I never understood is that Clang depends on LLVM (and LLVM doesn't depends on Clang), yet Clang source code is more or less expected to be in the LLVM source tree where I would have expected the reverse, that is LLVM in the source tree of Clang and optionally compiled when compiling Clang. On Fri, Sep 9, 2016 at 3:11 PM, Mehdi Amini via llvm-dev < llvm-dev at lists.llvm.org> wrote:> > > On Sep 9, 2016, at 2:11 AM, Alexander Benikowski <sebal007 at googlemail.com> > wrote: > > I'd vote for having each component in a seperated Repository and using a > Monorepo with Submodules to work with. > Since CLang depends on LLVM but not vice versa (if i am not mistaken. I'm > new here), i'd prefer to just work with the LLVM repo if it is desired. > > > Can you elaborate why and what kind of workflow you have that would > benefit from this? > > Also did you read the document I sent with the examples? > > -- > Mehdi > > > > > 2016-09-08 21:49 GMT+02:00 Renato Golin via llvm-dev < > llvm-dev at lists.llvm.org>: > >> On 8 September 2016 at 19:37, Mehdi Amini via llvm-dev >> <llvm-dev at lists.llvm.org> wrote: >> > I'd expect a cmake shortcut cmake >> > -DLLVM_ENABLE_PROjECTS=clang,libcxx,compiler-rt >> >> Hey, I like this idea! >> >> In that case, we don't need the directories in any particular >> location, as CMake would be able to find and link any place *we* want >> to put them in (in tree, flat out) and pull out their CMake files. >> >> This would also help each project to be built in its own, if they so >> require, without upsetting the LLVM-canon build style. >> >> cheers, >> --renato >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >-- *Alexandre Isoard* -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160909/ffaf3e18/attachment-0001.html>
Alexander via llvm-dev
2016-Sep-09 19:40 UTC
[llvm-dev] [RFC] One or many git repositories?
Oh sorry. I missed that. I'll do that aswell. But what i said was just about the general idea of only using what you need and breaking of dependencies (in this case a kind repositorydependency if everything is not a submodul). Imagine someone wants to work on something inside of LLVM itself. he creates a branch, does his changes. At some point he'll rebase his branch on top of the remote version. Lot of commits flow in. Even if no conflict occured, you might want to study the new commits. At this point however you have to filter out all the commits which do not influence the LLVM-Project. Instead if it's a repo with submodules, you can work on the LLVM submodul and review only those commits. I'd say the Monolith-Repo has (maybe) to much noise sometimes. The whole LLVM/CLang/... has some nice (theoretical) groups you can/could split them into. However reading about the cmake-magic here i get it that it might be hard to really decouple them. Am 09.09.2016 um 16:11 schrieb Mehdi Amini:> > > On Sep 9, 2016, at 2:11 AM, Alexander Benikowski > <sebal007 at googlemail.com <mailto:sebal007 at googlemail.com>> wrote: > >> I'd vote for having each component in a seperated Repository and >> using a Monorepo with Submodules to work with. >> Since CLang depends on LLVM but not vice versa (if i am not mistaken. >> I'm new here), i'd prefer to just work with the LLVM repo if it is >> desired. > > Can you elaborate why and what kind of workflow you have that would > benefit from this? > > Also did you read the document I sent with the examples? > > -- > Mehdi > > > >> >> 2016-09-08 21:49 GMT+02:00 Renato Golin via llvm-dev >> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>>: >> >> On 8 September 2016 at 19:37, Mehdi Amini via llvm-dev >> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote: >> > I'd expect a cmake shortcut cmake >> > -DLLVM_ENABLE_PROjECTS=clang,libcxx,compiler-rt >> >> Hey, I like this idea! >> >> In that case, we don't need the directories in any particular >> location, as CMake would be able to find and link any place *we* want >> to put them in (in tree, flat out) and pull out their CMake files. >> >> This would also help each project to be built in its own, if they so >> require, without upsetting the LLVM-canon build style. >> >> cheers, >> --renato >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org> >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev> >> >>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160909/dce85ffb/attachment.html>