New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bundle nunc-stans and related datastructures #2198
Comments
Comment from firstyear (@Firstyear) at 2017-02-21 02:48:55 Metadata Update from @Firstyear:
|
Comment from firstyear (@Firstyear) at 2017-02-21 04:38:16 Metadata Update from @Firstyear:
|
Comment from firstyear (@Firstyear) at 2017-02-22 07:52:12 |
Comment from firstyear (@Firstyear) at 2017-02-22 07:53:41 Metadata Update from @Firstyear:
|
Comment from firstyear (@Firstyear) at 2017-02-22 07:58:48 |
Comment from vashirov (@vashirov) at 2017-02-22 08:20:41 Have you considered using git submodules? This would keep history separate, give control over used versions and relieve us from maintenance hell of different versions of this library in different branches. |
Comment from mreynolds (@mreynolds389) at 2017-02-22 17:12:28 So in makefile the libsds stuff uses a bunch of tabs(like WAY too many per line). I don't think this was intentional, and it will throw the format off significantly. The rest looks fine, but Viktor has some valid concerns. |
Comment from firstyear (@Firstyear) at 2017-02-23 00:11:16 TL;DR - I do not want to use git submodules, they are an unnecessary complexity, and do not resolve the problem this is actually trying to solve. Okay. Git submodules makes this harder in my view. The whole point of this ticket is that we had issues building the RPM because we require multiple sources, have to do linking hacks and then rebuild to distribute. This is now broken because NS deps on SDS for the queue wrapper. The entire goal here is to tightly link and couple Nunc Stans to DS, because they are so close. This means integration in the Makefile.am and configure. We also want to use SDS in DS to replace some structures, so that needs to be wrapped in there too. As a result, you can't use git submodules for such an integration. Git Submodules is also still going to have the rpm build problems. Git submodules adds another complexity and solves no problems for us IMO. For example, how do you propose we keep the makefile and configure in sync in a way that works with git submodules, AND tar balls? (I don't think you can :) ) This solution is actually EASIER for maintenance. We have never use Nunc Stans in production before, so having it from Day 1 in the source tree means:
As a result, I still stand by the approach I am taking here because it is the simplest from a git, rpm build and autotools perspective. I'm all for simplicity in our system, because I think being too fancy with things like git will bite us eventually and will cause other problems. |
Comment from firstyear (@Firstyear) at 2017-02-23 00:12:01
That was how I had it in the other repo. I can clean that up now and submit a new Makefile patch if you like. |
Comment from vashirov (@vashirov) at 2017-02-23 00:34:06
Thanks for the explanation. Original description didn't mention these details and problems that you tried to solve. I'm OK with your approach. |
Comment from firstyear (@Firstyear) at 2017-02-23 00:38:15 No problem. Sometimes I have to remember to type out all the logic that is hiding in my mind :) You'll be happy to know that all the newly merged code comes with tests, and I wired them into make check and the rpm build %check step, which is a nice move for testing in the project too! |
Comment from vashirov (@vashirov) at 2017-02-23 01:26:03 rpm build fails for me:
To reproduce
|
Comment from firstyear (@Firstyear) at 2017-02-23 06:26:50 Looks like a missing define in crc32c.c on non x86_64 systems. I'll add a patch. |
Comment from firstyear (@Firstyear) at 2017-02-23 09:41:56 |
Comment from vashirov (@vashirov) at 2017-02-23 12:51:52
But even after the cleanup rpm build fails because there are no docs generated using doxygen. I see that we have a dep, but it's not executed anywhere -> |
Comment from firstyear (@Firstyear) at 2017-02-24 00:52:12 make -f rpm.mk doesn't take a bunch of stuff into account. It hacks stuff in the rpm spec template that is not consistent with with our updates and it's causing issues.
I think I would rather remove this broken script than fix it, because it's creating problems and confusion. For a long time it's been ignored (even by me), and it doesn't match the rest of our build process. |
Comment from firstyear (@Firstyear) at 2017-02-24 01:46:31 |
Comment from mreynolds (@mreynolds389) at 2017-02-24 20:52:41 Ack |
Comment from mreynolds (@mreynolds389) at 2017-02-24 20:52:50 Metadata Update from @mreynolds389:
|
Comment from firstyear (@Firstyear) at 2017-02-27 23:10:57 Metadata Update from @Firstyear:
|
Comment from firstyear (@Firstyear) at 2017-02-27 23:11:48 |
Comment from firstyear (@Firstyear) at 2017-02-27 23:12:18 |
Comment from firstyear (@Firstyear) at 2017-02-27 23:12:35 |
Comment from firstyear (@Firstyear) at 2017-02-27 23:13:33 Fixes the issues with i686 builds. s390 will be resolved in 49141 |
Comment from firstyear (@Firstyear) at 2017-02-28 05:18:20 commit a82a2cc |
Comment from firstyear (@Firstyear) at 2017-02-28 05:18:51 Metadata Update from @Firstyear:
|
Cloned from Pagure issue: https://pagure.io/389-ds-base/issue/49139
Issue Description
In order to simplify our build, we should absorb the nunc-stans project into Directory Server.
Give that we are the only consumer of this project this is safe. This gives us a nice guarantee about versions, make's backports and ports easier, and also will keep nunc-stans in step with DS better.
The text was updated successfully, but these errors were encountered: