This is the mail archive of the cygwin-apps mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Den 2010-12-10 16:11 skrev Corinna Vinschen: > Hi Chuck, > > > as you may have noticed, I updated syslog-ng to 3.2.1 yesterday. While > I prepared it for packaging, I came across the following problem. > > Syslog-ng introduced modules, which are shared libs, dynamically loaded > at runtime. The modules are stored in $(libexecdir)/syslog-ng. > Building the modules required to re-libtoolize with libtool 2.4, since > the libtool version used in the upstream source package (2.2.6b) didn't > handle DLL dependencies in *.la files correctly. > > Now, when installing the package, something strange happened. The > modules get installed via `libtool --mode=install <list of .la files>' > The *.dll.a and *.la files got installed into $(libexecdir)/syslog-ng, > but the DLLs got installed into $(libexecdir)/syslog-ng/../bin == > $(libexecdir)/bin. So the DLLs got installed into a parallel directory > called "bin". > > I was a bit surprised at first, but after a few seconds it occured to me > that there's some Cygwin-specific magic at work. This magic makes a lot > of sense for the default case of libraries which get installed into > /usr/lib, so the DLLs are installed into /usr/bin. However, for obvious > reasons it doesn't make sense for a modules directory. So, here are two > questions: > > - Is there an option to libtool so that it installs the DLLs into > $(libexecdir)/syslog-ng instead of $(libexecdir)/syslog-ng/../bin in > this syslog-ng scenario? > > - What is the "official", blessed way to handle this situation? What I > do right now is to move the DLLs to the correct directory in a > post-install/pre-create-package script, which also removes the extra > bin directory and the .dll.a files. > > Obviously it would be nice if libtool had an option to do it right in > `make install'. For instance, some '-install-as-module' option which > results in copying only the DLLs to $(libexecdir)/syslog-ng, but which > omits the .dll.a and .la files since they are note required anyway. > Something like that doesn't exist, I assume. WOuld it be an option > to implement this? IIRC, libtool should not do the ../bin dance when it installs libtool modules, so I can only assume that these syslog-ng modules are not built as libtool modules, but instead as ordinary libtool libraries. Does syslog-ng supply the -module option to libtool? But that's just a guess of course, since I haven't actually looked at the syslog-ng source... Cheers, Peter
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |