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