Bug 32245 - Update autotools configuration
Summary: Update autotools configuration
Status: RESOLVED MOVED
Alias: None
Product: dbus
Classification: Unclassified
Component: core (show other bugs)
Version: 1.5
Hardware: All All
: low enhancement
Assignee: Simon McVittie
QA Contact: D-Bus Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-08 19:54 UTC by Javier Jardón
Modified: 2018-10-12 21:07 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Use configure.ac instead configure.in (110.40 KB, patch)
2010-12-08 19:56 UTC, Javier Jardón
Details | Splinter Review
Update autotools configuration (10.05 KB, patch)
2010-12-08 19:59 UTC, Javier Jardón
Details | Splinter Review
Use autoreconf in autogen.sh (3.07 KB, patch)
2010-12-08 20:00 UTC, Javier Jardón
Details | Splinter Review

Description Javier Jardón 2010-12-08 19:54:10 UTC
Some patches to update the autotools configuration
Comment 1 Javier Jardón 2010-12-08 19:56:42 UTC
Created attachment 40936 [details] [review]
Use configure.ac instead configure.in
Comment 2 Javier Jardón 2010-12-08 19:59:59 UTC
Created attachment 40937 [details] [review]
Update autotools configuration

Replace deprecated macros and use the new libtool syntax
New requirements:
 autoconf >= 2.63
 automake >= 1.10
 libtool >= 2.2
Comment 3 Javier Jardón 2010-12-08 20:00:28 UTC
Created attachment 40938 [details] [review]
Use autoreconf in autogen.sh
Comment 4 Simon McVittie 2011-02-24 07:27:04 UTC
Review of attachment 40937 [details] [review]:

::: .gitignore
@@ -17,3 @@
 ltmain.sh
 missing
-m4

I already applied a better version of this (we do want to ignore libtool-generated files in m4/) for Bug #10887.

::: Makefile.am
@@ -67,3 @@
 	--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
 
-ACLOCAL_AMFLAGS = -I m4

Looks good, I wasn't aware that this was necessary.

::: configure.ac
@@ +1,2 @@
 dnl -*- mode: m4 -*-
+AC_PREREQ([2.63])

I'd really rather apply these bit-by-bit rather than having a single huge patch; I'll chop this one up.

In particular, shuffling the order around without an obvious reason makes it rather hard to review.
Comment 5 Simon McVittie 2011-02-24 08:04:50 UTC
Renaming configure.in to configure.ac seems fine.

I've split the changes from Attachment #40937 [details] into a branch, which I'll merge to 1.4 if nobody objects loudly and rapidly. Too numerous to attach here, see:

http://git.collabora.co.uk/?p=user/smcv/dbus-smcv.git;a=shortlog;h=refs/heads/modern-autofoo-32245

The changes I didn't incorporate are:

- some re-ordering, which is probably good in principle (to have the
  conventional order) but is likely to conflict with bugfixes pending review
  on other branches

- enabling maintainer mode by default: I'll clone a bug for that. It's more
  involved than it looks, because we base various defaults on whether we're
  in maintainer mode; we want tests, assertions, etc. enabled if and only if
  building from git, so that packagers and people installing from source
  tarballs get the small and secure version, but developers using random
  git snapshots get regression tests.
Comment 6 Simon McVittie 2011-02-24 08:10:53 UTC
Review of attachment 40938 [details] [review]:

This looks good in principle, except:

::: autogen.sh
@@ +15,3 @@
 fi
 
+autoreconf --verbose --force --install

It's somewhat desirable to use automake and aclocal 1.11 (for silent rules), but not automatically select 1.12 when available if 1.11 is still installed (to ensure portability back to at least 1.11). telepathy-glib has some goo in autogen.sh to do this.

We need to remove INSTALL from git and add it to .gitignore if we're going to use --force; otherwise we'll get spurious changes.

I'm tempted to merge this anyway to get rid of all the unnecessary shell code, though...

@@ -89,3 @@
-for arg in $*; do
-    case $arg in 
-        --no-configure)

Historically, we supported --no-configure; I think we should keep it (it's a fairly common idiom). It'd be OK to make it set NOCONFIGURE so that setting NOCONFIGURE in your environment also works, though.
Comment 7 Simon McVittie 2011-02-24 08:12:34 UTC
(In reply to comment #2)
>  libtool >= 2.2

We should have a LT_PREREQ, really?
Comment 8 Simon McVittie 2011-02-24 08:14:55 UTC
(In reply to comment #6)
> We need to remove INSTALL from git and add it to .gitignore if we're going to
> use --force; otherwise we'll get spurious changes.

In fact, we shouldn't do that, because INSTALL contains D-Bus-specific instructions.
Comment 9 Javier Jardón 2011-03-05 02:51:09 UTC
Hello Simon, thanks for your reviews

Yeah, I forgot to add this just before LT_INIT:
LT_PREREQ([2.2])
Comment 10 Simon McVittie 2012-03-12 09:34:48 UTC
Not actively being worked on, and configure.ac restructuring is the sort of thing that is going to be a massive pain to deal with unless it gets reviewed and merged promptly (before the file changes for some other reason). For 1.7, maybe.
Comment 11 GitLab Migration User 2018-10-12 21:07:25 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/dbus/dbus/issues/33.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.