|
View:
New views
6 Messages
—
Rating Filter:
Alert me
|
|
|
maildrop 2.2 doesn't install if makedat doesn't build, by defaultHi,
I hit a bit of a problem trying to install the latest version. This didn't happen for me with 2.0 because there the USE_GDBM got set automatically (without any change to the related configure options). The top-level makefile still expects for makedatprog to get built unconditionally: % grep install Makefile.am -A10 | grep makedat -A2 -B2 $(INSTALL_PROGRAM) rfc2045/reformime $(DESTDIR)$(bindir)/reformime $(INSTALL_PROGRAM) rfc2045/makemime $(DESTDIR)$(bindir)/makemime $(INSTALL_PROGRAM) makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog $(INSTALL_SCRIPT) makedat/makedat $(DESTDIR)$(bindir)/makedat . maildrop/uidgid ; test -z "$$gid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chgrp $$gid maildrop lockmail -- uninstall-maildrop: for f in maildrop mailbot maildirmake reformail lockmail makemime reformime makedat makedatprog; do \ rm -f $(DESTDIR)$(bindir)/$$f ; \ done However, when you don't touch the db options in configuration phase of 2.2, it can't get built as this happens: % diff -U0 dbobj.h{.in,} --- dbobj.h.in 2000-07-02 01:41:53.000000000 +0200 +++ dbobj.h 2009-11-06 11:04:01.000000000 +0100 @@ -15 +15 @@ -#if @USE_GDBM@ +#if 0 @@ -34 +34 @@ -#if @USE_DB@ +#if 0 [maildrop-2.2.0/makedat]% make makedatprog cc -DHAVE_CONFIG_H -I. -I./.. -I.. -Wall -g -Wall -O2 -c makedatprog.c makedatprog.c:19: warning: 'struct dbobj' declared inside parameter list makedatprog.c:19: warning: its scope is only this definition or declaration, which is probably not what you want makedatprog.c: In function 'addgdbm': makedatprog.c:33: warning: implicit declaration of function 'dbobj_store' makedatprog.c: At top level: makedatprog.c:42: warning: 'struct dbobj' declared inside parameter list makedatprog.c: In function 'buildgdbm': makedatprog.c:76: warning: passing argument 2 of 'addgdbm' from incompatible pointer type makedatprog.c: In function 'main': makedatprog.c:83: error: storage size of 'obj' isn't known makedatprog.c:102: warning: implicit declaration of function 'dbobj_init' makedatprog.c:104: warning: implicit declaration of function 'dbobj_open' makedatprog.c:112: warning: implicit declaration of function 'dbobj_close' makedatprog.c:83: warning: unused variable 'obj' make: *** [makedatprog.o] Error 1 dbobj.h.in or makedat's Makefile would benefit from the addition of an explicit error in case neither @USE_GDBM@ nor @USE_DB@ were enabled. In addition I think it would be useful if the logic to install everything was simply moved to the right subdirectories, and then those subdirs make their own local choices as to what they can or cannot do. That way there would need to be no static dependency between the top-level makefile install rule and unrelated subdir build rules. -- 2. That which causes joy or happiness. ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Courier-maildrop mailing list Courier-maildrop@... https://lists.sourceforge.net/lists/listinfo/courier-maildrop |
|
|
Re: maildrop 2.2 doesn't install if makedat doesn't build, by defaultOn Fri, Nov 06, 2009 at 11:47:08AM +0100, Josip Rodin wrote:
> I hit a bit of a problem trying to install the latest version. > This didn't happen for me with 2.0 because there the USE_GDBM got set > automatically (without any change to the related configure options). > However, when you don't touch the db options in configuration phase of 2.2, > it can't get built as this happens: > > % diff -U0 dbobj.h{.in,} > --- dbobj.h.in 2000-07-02 01:41:53.000000000 +0200 > +++ dbobj.h 2009-11-06 11:04:01.000000000 +0100 > @@ -15 +15 @@ > -#if @USE_GDBM@ > +#if 0 > @@ -34 +34 @@ > -#if @USE_DB@ > +#if 0 Hm, looking at it again, this doesn't make sense: % ./configure --help | grep -i db --with-db=db Use DB library instead of GDBM. --without-db Disable GDBM extensions This implies that GDBM is still supposed to be the default. -- 2. That which causes joy or happiness. ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Courier-maildrop mailing list Courier-maildrop@... https://lists.sourceforge.net/lists/listinfo/courier-maildrop |
|
|
Re: maildrop 2.2 doesn't install if makedat doesn't build, by defaultJosip Rodin writes:
> The top-level makefile still expects for makedatprog to get built > unconditionally: Good point. diff -U3 -r1.77 Makefile.am --- Makefile.am 5 Sep 2009 23:12:45 -0000 1.77 +++ Makefile.am 6 Nov 2009 12:01:24 -0000 @@ -113,15 +113,20 @@ $(INSTALL_PROGRAM) maildir/maildirmake $(DESTDIR)$(bindir)/maildirmake $(INSTALL_PROGRAM) rfc2045/reformime $(DESTDIR)$(bindir)/reformime $(INSTALL_PROGRAM) rfc2045/makemime $(DESTDIR)$(bindir)/makemime - $(INSTALL_PROGRAM) makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog - $(INSTALL_SCRIPT) makedat/makedat $(DESTDIR)$(bindir)/makedat + test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \ + $(INSTALL_PROGRAM) makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog + test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \ + $(INSTALL_SCRIPT) makedat/makedat $(DESTDIR)$(bindir)/makedat . maildrop/uidgid ; test -z "$$gid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chgrp $$gid maildrop lockmail . maildrop/uidgid ; test -z "$$uid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chown $$uid maildrop lockmail && chmod 755 maildrop lockmail uninstall-maildrop: - for f in maildrop mailbot maildirmake reformail lockmail makemime reformime makedat makedatprog; do \ + for f in maildrop mailbot maildirmake reformail lockmail makemime reformime; do \ rm -f $(DESTDIR)$(bindir)/$$f ; \ done + test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \ + rm -f $(DESTDIR)$(bindir)/makedat ; \ + rm -f $(DESTDIR)$(bindir)/makedatprog all-recursive: all-make-check ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Courier-maildrop mailing list Courier-maildrop@... https://lists.sourceforge.net/lists/listinfo/courier-maildrop |
|
|
Re: maildrop 2.2 doesn't install if makedat doesn't build, by defaultOn Fri, Nov 06, 2009 at 07:03:11AM -0500, Sam Varshavchik wrote:
> Josip Rodin writes: > >> The top-level makefile still expects for makedatprog to get built >> unconditionally: > > Good point. > > diff -U3 -r1.77 Makefile.am > --- Makefile.am 5 Sep 2009 23:12:45 -0000 1.77 > +++ Makefile.am 6 Nov 2009 12:01:24 -0000 > @@ -113,15 +113,20 @@ > $(INSTALL_PROGRAM) maildir/maildirmake $(DESTDIR)$(bindir)/maildirmake > $(INSTALL_PROGRAM) rfc2045/reformime $(DESTDIR)$(bindir)/reformime > $(INSTALL_PROGRAM) rfc2045/makemime $(DESTDIR)$(bindir)/makemime > - $(INSTALL_PROGRAM) makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog > - $(INSTALL_SCRIPT) makedat/makedat $(DESTDIR)$(bindir)/makedat > + test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \ > + $(INSTALL_PROGRAM) makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog > + test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \ > + $(INSTALL_SCRIPT) makedat/makedat $(DESTDIR)$(bindir)/makedat > . maildrop/uidgid ; test -z "$$gid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chgrp $$gid maildrop lockmail > . maildrop/uidgid ; test -z "$$uid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chown $$uid maildrop lockmail && chmod 755 maildrop lockmail > > uninstall-maildrop: > - for f in maildrop mailbot maildirmake reformail lockmail makemime reformime makedat makedatprog; do \ > + for f in maildrop mailbot maildirmake reformail lockmail makemime reformime; do \ > rm -f $(DESTDIR)$(bindir)/$$f ; \ > done > + test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \ > + rm -f $(DESTDIR)$(bindir)/makedat ; \ > + rm -f $(DESTDIR)$(bindir)/makedatprog > > > all-recursive: all-make-check > Also there's the issue of its manual page and its html version. I think something like the attached patch should be okay. -- 2. That which causes joy or happiness. --- maildrop-2.2.0.orig/configure.in +++ maildrop-2.2.0/configure.in @@ -122,6 +122,7 @@ AC_SUBST(USE_GDBM) AC_SUBST(USE_DB) AC_SUBST(dblibrary) +AM_CONDITIONAL(HAVE_DBLIBRARY, test "$dblibrary" != "") LIBS="$saveLIBS" --- maildrop-2.2.0.orig/Makefile.am +++ maildrop-2.2.0/Makefile.am @@ -64,10 +64,18 @@ maildropfilter.html maildropgdbm.html maildrop.html mailbot.html \ makemime.html reformail.html reformime.html +if HAVE_DBLIBRARY +MAILDROPHTML += makedat.html +endif + MAILDROPMAN=lockmail.1 maildirmake.1 maildrop.1 mailbot.1 maildropex.7 \ maildir.5 \ maildropfilter.7 maildropgdbm.7 makemime.1 reformail.1 reformime.1 +if HAVE_DBLIBRARY +MAILDROPMAN += makedat.1 +endif + EXTRA_LTLIBRARIES=librfc822.la librfc2045.la if DEVEL @@ -80,7 +88,11 @@ lib_LTLIBRARIES=@DEVEL_LIBS@ htmldataclean=$(DELIVERQUOTAHTML) \ - $(MAILDROPHTML) rfc822.html rfc2045.html makedat.html + $(MAILDROPHTML) rfc822.html rfc2045.html + +if !HAVE_DBLIBRARY +htmldataclean += makedat.html +endif html_DATA=$(htmldataclean) manpage.css ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Courier-maildrop mailing list Courier-maildrop@... https://lists.sourceforge.net/lists/listinfo/courier-maildrop |
|
|
Re: maildrop 2.2 doesn't install if makedat doesn't build, by defaultOn Sat, Nov 07, 2009 at 02:47:02PM +0100, Josip Rodin wrote:
> Also there's the issue of its manual page and its html version. > > I think something like the attached patch should be okay. > --- maildrop-2.2.0.orig/Makefile.am > +++ maildrop-2.2.0/Makefile.am > @@ -80,7 +88,11 @@ > lib_LTLIBRARIES=@DEVEL_LIBS@ > > htmldataclean=$(DELIVERQUOTAHTML) \ > - $(MAILDROPHTML) rfc822.html rfc2045.html makedat.html > + $(MAILDROPHTML) rfc822.html rfc2045.html > + > +if !HAVE_DBLIBRARY > +htmldataclean += makedat.html > +endif > > html_DATA=$(htmldataclean) manpage.css > Hmm, or maybe just lose that last chunk. makedat.html looks safe to clean up in any case, I got carried away. -- 2. That which causes joy or happiness. ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Courier-maildrop mailing list Courier-maildrop@... https://lists.sourceforge.net/lists/listinfo/courier-maildrop |
|
|
Re: maildrop 2.2 doesn't install if makedat doesn't build, by defaultOn Sun, Nov 08, 2009 at 12:30:16AM +0100, Josip Rodin wrote:
> On Sat, Nov 07, 2009 at 02:47:02PM +0100, Josip Rodin wrote: > > Also there's the issue of its manual page and its html version. > > > > I think something like the attached patch should be okay. > > > --- maildrop-2.2.0.orig/Makefile.am > > +++ maildrop-2.2.0/Makefile.am > > @@ -80,7 +88,11 @@ > > lib_LTLIBRARIES=@DEVEL_LIBS@ > > > > htmldataclean=$(DELIVERQUOTAHTML) \ > > - $(MAILDROPHTML) rfc822.html rfc2045.html makedat.html > > + $(MAILDROPHTML) rfc822.html rfc2045.html > > + > > +if !HAVE_DBLIBRARY > > +htmldataclean += makedat.html > > +endif > > > > html_DATA=$(htmldataclean) manpage.css > > > > Hmm, or maybe just lose that last chunk. makedat.html looks safe to clean up > in any case, I got carried away. Oh, bleh, upon another rebuild, I realized why I did that in the first place. The variable htmldataclean also has a meaning in the install rule - it tries to install this file into the tree, but with the other patch it turns out to be a duplicate, so that doesn't work. We need that third chunk to look like this: @@ -88,13 +88,17 @@ lib_LTLIBRARIES=@DEVEL_LIBS@ htmldataclean=$(DELIVERQUOTAHTML) \ - $(MAILDROPHTML) rfc822.html rfc2045.html makedat.html + $(MAILDROPHTML) rfc822.html rfc2045.html html_DATA=$(htmldataclean) manpage.css +if !HAVE_DBLIBRARY +html_DATA += makedat.html +endif + man_MANS=$(DELIVERQUOTAMAN) \ $(MAILDROPMAN) $(DEVEL_MAN) -DISTCLEANFILES=$(htmldataclean) $(man_MANS) +DISTCLEANFILES=$(htmldataclean) $(man_MANS) makedat.html librfc822_la_SOURCES= librfc2045_la_SOURCES= That way we clean it up in any case, but only try to install it once, if the conditionals work out. I'm doing another full rebuild to test this now... -- 2. That which causes joy or happiness. ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Courier-maildrop mailing list Courier-maildrop@... https://lists.sourceforge.net/lists/listinfo/courier-maildrop |
| Free embeddable forum powered by Nabble | Forum Help |