linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dan Nicholson <dbn.lists@gmail.com>
To: linux-hotplug@vger.kernel.org
Subject: Re: [PATCH] Allow disabling the build of all of systemd, leaving just udev
Date: Thu, 07 Jun 2012 13:34:01 +0000	[thread overview]
Message-ID: <CAMs08D+vsz_ygjEca=MVV+VuitX4Mp+HtVcVeVSu1-VCm7G=-Q@mail.gmail.com> (raw)
In-Reply-To: <4FC9B938.6020608@kadzban.is-a-geek.net>

On Wed, Jun 6, 2012 at 10:15 AM, William Hubbs <w.d.hubbs@gmail.com> wrote:
> On Wed, Jun 06, 2012 at 05:38:29AM -0700, Dan Nicholson wrote:
>> Breaking up the Makefile.am into several files is probably cleaner,
>> but it doesn't actually change the problem you're trying to solve
>> here. You still have to wrap large parts of the build in
>> AM_CONDITIONALs. That doesn't change whether it's in one file or many.
>> The include happens at automake time, not build time, so conditionally
>> including the file won't do anything different for you. Everything
>> will get merge into the toplevel Makefile.in.
>
> If the am_condissionals are controlled by configure switches, we can set
> things up so that the packager or user who is building udev or systemd
> has control over what gets built. If they want to build udev only, or
> systemd, or just the tools in the distribution that don't require
> systemd, they will be able to.
>
> This is where I want to go once we have the Makefile broken up. This
> will also require some work in configure.ac, but I think it will be
> worth that because it will give packagers the flexability to build what
> they want.
>
> include Makefile-shared.am
> if ENABLE_UDEV
> include Makefile-udev.am
> endif
> if ENABLE_TOOLS
> include Makefile-tools.am
> endif
> if ENABLE_SYSTEMD
> include Makefile-systemd.am
> endif
>
> The first stage of this will be breaking up Makefile.am and using
> includes without condissionals. Once everything builds cleanly in that
> setup, we can  do the work in configure.ac and add condissionals to
> Makefile.am.

What do you know, that works. I had thought automake didn't support
that, but it works nicely. The one thing I was trying to do when I was
starting this patch was keep dist working regardless of your configure
flags. Usually that just mean leaving EXTRA_DIST out of the
conditionals. That's painful, though, and you can probably just bring
out a big hammer during dist. I have something like this in
pkg-config:

if !ENABLE_SYSTEMD
dist-hook:
        @echo "error: you need to enable systemd for dist"
        @exit 1
endif

--
Dan

      parent reply	other threads:[~2012-06-07 13:34 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-02  6:56 [PATCH] Allow disabling the build of all of systemd, leaving just udev Bryan Kadzban
2012-06-02 20:49 ` William Hubbs
2012-06-03 16:55 ` Bryan Kadzban
2012-06-03 21:21 ` Bryan Kadzban
2012-06-03 21:22 ` William Hubbs
2012-06-03 22:00 ` Bryan Kadzban
2012-06-04  1:50 ` William Hubbs
2012-06-04  2:13 ` Bryan Kadzban
2012-06-04 18:51 ` William Hubbs
2012-06-05  3:10 ` Bryan Kadzban
2012-06-05 17:56 ` William Hubbs
2012-06-06  3:45 ` Bryan Kadzban
2012-06-06  4:23 ` Bruce Dubbs
2012-06-06 12:38 ` Dan Nicholson
2012-06-06 16:52 ` William Hubbs
2012-06-06 17:15 ` William Hubbs
2012-06-06 18:51 ` Bruce Dubbs
2012-06-06 22:53 ` William Hubbs
2012-06-07 13:34 ` Dan Nicholson [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMs08D+vsz_ygjEca=MVV+VuitX4Mp+HtVcVeVSu1-VCm7G=-Q@mail.gmail.com' \
    --to=dbn.lists@gmail.com \
    --cc=linux-hotplug@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).