Hello Anatoli,

when you call ./configure with whatever parameters, the file config.h
is generated anew.  When you call 'make' afterwards everything
depending on config.h directly or indirectly is rebuild and literally
everything depends directly or indirectly on config.h (except probably
the perl code)

On each build the old binaries/libraries are overwritten.

If you want different combinations do VPATH (out-of-source) builds.

> In other words, is it possible to make a single build and then
package everything in 3 package variants (for each configure options
group) or should there be 3 different builds?

I fear the question is wrong.  Once you decide what features to
compile/include you enable the features.  In whatever way you split the
binaries, there will be only one 'cyr_buildinfo'.  When cyr_buildinfo
is executed it says which compile time options were set (for
cyr_buildinfo and everything else)

You can split the binaries/libraries in packages as you want, but
having different ./configure parameters for each such package is ...
well I do not see the point of doing this.

As a rule of thumb, when you package, you decide which features to
include (at ./configure) time and then the features are fixed for all
users.  If one wants different features, he has to compile himself.

Greetings
  Дилян



On Sun, 2020-11-22 at 14:50 -0300, Anatoli via Devel wrote:
> Hi Ellie, All,
> 
> When we build cyrus-imapd with different options like:
> 
> --enable-http --enable-jmap (a http flavor)
> 
> VS
> 
> --enable-murder --enable-replication --enable-backup (a replication
> flavor)
> 
> VS
> 
> none of the above (a base flavor),
> 
> do the binaries/libs themselves change or is that new binaries/libs
> appear for
> each enabled feature?
> 
> In other words, is it possible to make a single build and then
> package
> everything in 3 package variants (for each configure options group)
> or should
> there be 3 different builds?
> 
> According my experience, there are separate binaries for each feature
> (like
> httpd, idled, timsieved, etc.), so it would be possible to prepare
> different
> packages by just building it with a complete set of configure args
> and then
> including necessary files for each package flavor, but maybe I'm
> missing
> something?
> 
> I've never packaged cyrus-imapd for others, so no experience here.
> Maybe it also
> makes sense to add other packaging combinations (objectstore, xapian,
> DBs, ldap,
> clamav, kerberos)? If there are cyrus-imapd package maintainers
> reading this,
> could you please share your experience?
> 
> Thanks,
> Anatoli
> 
> ------------------------------------------
> Cyrus: Devel
> Permalink:
> https://cyrus.topicbox.com/groups/devel/T5acbcb9536dc47c3-Mcb3812743db54cd1af6dc2f1
> Delivery options:
> https://cyrus.topicbox.com/groups/devel/subscription



------------------------------------------
Cyrus: Devel
Permalink: 
https://cyrus.topicbox.com/groups/devel/T5acbcb9536dc47c3-Maddcd6cdc4b82c7e4c783cf5
Delivery options: https://cyrus.topicbox.com/groups/devel/subscription

Reply via email to