A couple of notes regarding packagability
Hi! I started to play around with creating various packages of 3.3.0beta2, and noticed a couple of annoying bits and pieces (none of this is serious, I can workaround most if not all of them, but the packaging would be a lot simpler if I wouldn't have to): * I sent a patch back in May, which made it possible to use a system-wide libmongo-client installation, but it does not appear to be merged yet. It is attached to this email, diffed against current git head. * autogen.sh is not executable in a fresh checkout, and this repeatedly bites me over and over again. * autogen.sh will always try to call git submodule init when autogenerating the submodules. I'd like a way to skip this step, and just use whatever is in the subdirectories, assuming there IS something. The reason I want this, is because I'm building from a git checkout, not a make dist'd tarball, and my build chroots do not have network access (nor do I want to give them any). * It would also be nice if autogen.sh used the --copy flag for libtoolize and automake. * When the system-wide libmongo-client support patch is applied, and syslog-ng is built with --with-libmongo-client=system, make distclean will fail, as it tries to clean in modules/afmongodb/libmongo-client/, while that hasn't been configured in. I do not know an easy solution around this, except maybe overriding DIST_SUBDIRS with SUBDIRS for the distclean-recursive target in modules/afmongodb/ - but that sounds like a crude hack, and I haven't tested if it actually works. This is all, so far. I'll have another packaging sprint sometime tomorrow, and see if I find anything else. I'll try to find time to submit patches for the above, but I'm not sure if I'll be able to this weekend. It is very likely, that I'll submit a patch for system() to recognise GNU/kFreeBSD and create the appropriate entries. PS: syslog-ng 3.3.0beta2 packages for Debian squeeze & sid should be available by the end of the coming week, for i386, amd64 and kfreebsd-amd64 at least. I just have to iron out a few issues and add some finishing touches to my build farm. -- |8]
On Sat, 2011-08-20 at 16:23 +0200, Gergely Nagy wrote:
Hi!
I started to play around with creating various packages of 3.3.0beta2, and noticed a couple of annoying bits and pieces (none of this is serious, I can workaround most if not all of them, but the packaging would be a lot simpler if I wouldn't have to):
* I sent a patch back in May, which made it possible to use a system-wide libmongo-client installation, but it does not appear to be merged yet.
It is attached to this email, diffed against current git head.
applied, thanks.
* autogen.sh is not executable in a fresh checkout, and this repeatedly bites me over and over again.
hmm, it is executable for me, and is marked with the 'x' permission in the git repository, at least according to gitweb: http://git.balabit.hu/?p=bazsi/syslog-ng-3.3.git;a=tree;h=8a7f6854d26a7ea8fa...
* autogen.sh will always try to call git submodule init when autogenerating the submodules. I'd like a way to skip this step, and just use whatever is in the subdirectories, assuming there IS something.
The reason I want this, is because I'm building from a git checkout, not a make dist'd tarball, and my build chroots do not have network access (nor do I want to give them any).
I was thinking about this already too, so knocking on open doors. I've commited a Proof-of-concept on my autogen branch.
* It would also be nice if autogen.sh used the --copy flag for libtoolize and automake.
ok, not done anything on this.
* When the system-wide libmongo-client support patch is applied, and syslog-ng is built with --with-libmongo-client=system, make distclean will fail, as it tries to clean in modules/afmongodb/libmongo-client/, while that hasn't been configured in.
I do not know an easy solution around this, except maybe overriding DIST_SUBDIRS with SUBDIRS for the distclean-recursive target in modules/afmongodb/ - but that sounds like a crude hack, and I haven't tested if it actually works.
I'd have to think about this. The reason is that AC_CONFIG_SUBDIRS() is not invoked in this case, but calling that would run the configure script for libmongo-client, even if it wasn't used.
It is very likely, that I'll submit a patch for system() to recognise GNU/kFreeBSD and create the appropriate entries.
would be welcome.
PS: syslog-ng 3.3.0beta2 packages for Debian squeeze & sid should be available by the end of the coming week, for i386, amd64 and kfreebsd-amd64 at least. I just have to iron out a few issues and add some finishing touches to my build farm.
very cool. -- Bazsi
Balazs Scheidler <bazsi@balabit.hu> writes: For the record, I made a separate tree for Debian packaging, it's at git://git.madhouse-project.org/debian/syslog-ng.git - the non-debian specific patches are on the 'patched' branch. I'm not going to submit the new debianisation for inclusion, as it does not work with pre-squeeze releases.
* autogen.sh is not executable in a fresh checkout, and this repeatedly bites me over and over again.
hmm, it is executable for me, and is marked with the 'x' permission in the git repository, at least according to gitweb:
http://git.balabit.hu/?p=bazsi/syslog-ng-3.3.git;a=tree;h=8a7f6854d26a7ea8fa...
Hrm, indeed. Must be something stupid on my buildds then. Nevertheless, for my own sanity, and until I can figure out what goes wrong: http://git.madhouse-project.org/debian/syslog-ng/commit/?h=patched&id=a6b982...
* autogen.sh will always try to call git submodule init when autogenerating the submodules. I'd like a way to skip this step, and just use whatever is in the subdirectories, assuming there IS something.
The reason I want this, is because I'm building from a git checkout, not a make dist'd tarball, and my build chroots do not have network access (nor do I want to give them any).
I was thinking about this already too, so knocking on open doors. I've commited a Proof-of-concept on my autogen branch.
Looks ok to me! Though, I did something different locally: http://git.madhouse-project.org/debian/syslog-ng/commit/?h=patched&id=d31718... I kinda like how I can explicitly disable the git call. Perhaps we could combine the two? Though, that might be an overkill, in which case, I like your approach better.
* It would also be nice if autogen.sh used the --copy flag for libtoolize and automake.
ok, not done anything on this.
http://git.madhouse-project.org/debian/syslog-ng/commit/?h=patched&id=c2d24b...
* When the system-wide libmongo-client support patch is applied, and syslog-ng is built with --with-libmongo-client=system, make distclean will fail, as it tries to clean in modules/afmongodb/libmongo-client/, while that hasn't been configured in.
I do not know an easy solution around this, except maybe overriding DIST_SUBDIRS with SUBDIRS for the distclean-recursive target in modules/afmongodb/ - but that sounds like a crude hack, and I haven't tested if it actually works.
I'd have to think about this. The reason is that AC_CONFIG_SUBDIRS() is not invoked in this case, but calling that would run the configure script for libmongo-client, even if it wasn't used.
Yeah, I wouldn't want to run configure in there if using the system library. I'd rather tweak distclean to not go there, either, in that case. I'll play with the DIST_SUBDIRS override, and report back.
PS: syslog-ng 3.3.0beta2 packages for Debian squeeze & sid should be available by the end of the coming week, for i386, amd64 and kfreebsd-amd64 at least. I just have to iron out a few issues and add some finishing touches to my build farm.
very cool.
Packages reporting in, as of ~5 minutes ago! Though, only for amd64 at this time (but built for both stable & unstable). -- |8]
participants (2)
-
Balazs Scheidler
-
Gergely Nagy