Opened 5 years ago
Closed 4 years ago
#21952 closed defect (wontfix)
Update cddlib's autotooling
Reported by: | embray | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-duplicate/invalid/wontfix |
Component: | packages: standard | Keywords: | cddlib autotools |
Cc: | Merged in: | ||
Authors: | Erik Bray | Reviewers: | |
Report Upstream: | Reported upstream. Developers acknowledge bug. | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description
As discussed in this thread, cddlib's autotools files are quite outdated and in due for modernization. In fact, somehow, its configure.in
is not even compatible with the version of automake
that the Makefile.in
s were generated with. This makes it difficult/impossible to make update cddlib's Makefiles (see #15872).
I reworked the latest version of cddlib (0.94h, though this work would also apply to at least the previous version, 0.94g) to use automake 1.14.1 (currently the highest version in sage, though #21196 would update that to 1.15).
I also cleaned up the contents of the tarball (removed .DS_Store files and other crud), and made it so that make distcheck
works.
I've attached an updated upstream tarball, as well as a set of patches to the original upstream that should reproduce it.
Attachments (9)
Change History (34)
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
Changed 5 years ago by
comment:1 Changed 5 years ago by
comment:2 follow-up: ↓ 3 Changed 5 years ago by
I wouldn't have thought that ACLOCAL_AMFLAGS = -I m4
was necessary once you have AC_CONFIG_MACRO_DIR([m4])
but I could be wrong.
There are other things I am thinking off that can be done (VPATH) but we may not want to do everything at once.
comment:3 in reply to: ↑ 2 Changed 5 years ago by
Replying to fbissey:
I wouldn't have thought that
ACLOCAL_AMFLAGS = -I m4
was necessary once you haveAC_CONFIG_MACRO_DIR([m4])
but I could be wrong.
I'm fairly sure myself that it isn't strictly necessary, but I put it because autoconf suggested that I do anyways.
comment:4 Changed 5 years ago by
Or maybe it was libtoolize that told me that. I can't remember for sure. From https://www.gnu.org/software/libtool/manual/html_node/Invoking-libtoolize.html
"In the future other Autotools will automatically check the contents of AC_CONFIG_MACRO_DIRS, but at the moment it is more portable to add the macro directory to ACLOCAL_AMFLAGS in Makefile.am, which is where the tools currently look."
That future is now, but I guess it still suggests it just in case.
comment:5 Changed 5 years ago by
comment:6 Changed 5 years ago by
- Type changed from PLEASE CHANGE to defect
comment:7 Changed 5 years ago by
- Status changed from new to needs_review
I think this is actually ready to go. I just don't know what the process is for adding a new tarball to the sage package mirrors. For this particular case I don't see a better workaround than a new source package since the original is a bit broken.
comment:8 Changed 5 years ago by
There's no branch, what is to be reviewed?
Also, could you just share the git from which these patches are generated? (comment 1)
Also, "cddlib-0.94.tar.gz" does not seem to have an unambiguous version number.
comment:9 Changed 5 years ago by
- Status changed from needs_review to needs_work
comment:10 Changed 5 years ago by
- Status changed from needs_work to needs_info
What I don't understand is what the process is (though it seems like there is one?) of providing an alternative upstream tarball for one of the packages in Sage, such that is distributed to all the mirrors, etc.
I've attached such a tarball, as well as the patches that reproduce it from the original upstream tarball.
The problem here was that the source tarball itself was broken in various ways.
comment:11 Changed 5 years ago by
Most of the process is described here: http://doc.sagemath.org/html/en/developer/packaging.html#when-to-patch-when-to-repackage-when-to-autoconfiscate (and in the following sections).
The release manager adds the "upstream tar ball" to the server when the ticket is merged. Usually people just provide an URL in the description, rather than attaching it to trac.
Instead of attaching patches here, use a public git repository. Make an spkg-src
that can regenerate your "upstream tar ball" from the repository. See bliss/spkg-src
for an example.
comment:12 Changed 5 years ago by
Forgot about this until now, but thanks for the info. I'll follow the process you described then.
comment:13 Changed 4 years ago by
embray: are you planning to work on this again anytime soon? I just stumbled upon this because Debian has some patches to fix Sage's integration of cddlib for version 0.94h.
If you think that the patches proposed here are still the way this should be done, should we propose them upstream?
comment:14 Changed 4 years ago by
Just a note, from my experience in sage-on-gentoo, the debian patches are insufficient - as in I have doctest failures even with the debian patches.
Otherwise I am all for pushing updated autotooling upstream.
comment:15 Changed 4 years ago by
This really needs #21196. IIRC I ran into some stumbling blocks with that, but I forget--it was a long time ago.
comment:16 Changed 4 years ago by
- Dependencies set to #21196
So, that's a dependency if I understood you correctly.
comment:17 Changed 4 years ago by
- Dependencies #21196 deleted
I'm dropping that dependency again, as I am in favor of dropping autotools from our SPKGs.
comment:18 Changed 4 years ago by
- Report Upstream changed from Not yet reported upstream; Will do shortly. to Reported upstream. No feedback yet.
I wrote a mail to upstream, offering my help with this. Let's see what they say.
comment:19 Changed 4 years ago by
I think the series of patches I originally attached to this ticket should do it. I forget why I just added a bunch of patches here as opposed to some other way of doing it...
comment:20 Changed 4 years ago by
Some of the patches don't apply anymore so I rebase them. I am trying to convince the author of the beauty of github (or similar) and he wants to have a look. I proposed a new home for upstream here: https://github.com/cddlib/cddlib.
And a modified version of your patches is here: https://github.com/cddlib/cddlib/pull/1
Let's continue the discussion there.
comment:21 Changed 4 years ago by
- Report Upstream changed from Reported upstream. No feedback yet. to Reported upstream. Developers acknowledge bug.
comment:22 Changed 4 years ago by
- Milestone changed from sage-7.5 to sage-8.3
comment:23 Changed 4 years ago by
- Milestone changed from sage-8.3 to sage-duplicate/invalid/wontfix
- Status changed from needs_info to positive_review
Upstream has upgraded their autotooling. Now we just need to package the next release #25344.
comment:24 Changed 4 years ago by
(feel free to reopen this, if you think that I am missing something here.)
comment:25 Changed 4 years ago by
- Resolution set to wontfix
- Status changed from positive_review to closed
closing positively reviewed duplicates
Do you have a git repository from which you created this?