Date: Wed, 24 Jan 1996 22:47:44 +0100 From: "Julian H. Stacey" <jhs@freebsd.org> To: "Jordan K. Hubbard" <jkh@time.cdrom.com> Cc: ports@freebsd.org, jkh@freebsd.org, brent.welch@sun.com, n1epo4tl@ibmmail.com, root@thud.freebsd.org Subject: Re: ports/mail/exmh Message-ID: <199601242147.WAA03843@vector.jhs.local> In-Reply-To: Your message of "Mon, 22 Jan 1996 19:46:25 PST." <3441.822368785@time.cdrom.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, Reference: > From: "Jordan K. Hubbard" <jkh@time.cdrom.com> > > > > Below is a new port (wrapper): ports/mail/exmh > > ( EXMH is a very nice X-Windows front end to the mail/mh package, > > > > ( This is a more polished version of the one I did in December, > > But still untested.. :-) Not untested, It works for me, but I did say it would doubtless need additional tweaks from a ports person ;-) I've done as much testing as is convenient here: - While working on it I tried running make & make install on both my prime development box, & my 2nd gate box, I also ran pkg_add on my gate box. - I have several times asked why the freefall motd still refers to the `thud' crash, & invites one to mail to arrange recovery of one's login/passwd & yet my thud login/passwd remains unrepaired, so I can't test on the official (& convenient to my USA ISP) test site. (Perhap root@thud gets its mail forwarded off line, & when root is on line, my `please repair jhs passwd' mail is no longer to hand.) .... so I can't test on thud, & testing ports on freefall has been previously discouraged. - I did some earlier incomplete work on a host in Aachen, but as my ISP is USA based, the double Atlantic hop slowed progress. If you want me to test on thud, root@thud needs to fix my damaged passwd entry. > root@time-> make > >> exmh-1.6.5.tar.gz doesn't seem to exist on this system. > >> Attempting to fetch from ftp://ftp.aud.alcatel.com/tcl. > /tclexmh-1.6.5.tar.gz: No such file. > > The MASTER_SITES field needs a trailing `/', > which in this case > doesn't really matter anyway since it points to the wrong directory! :-) > I believe that Alcatel has always put code like this in the `code' > subdirectory, where one will indeed find the exmh package. OK, I've had my distfile about a month so didnt notice this. I assume you are reccomending MASTER_SITES= ftp://ftp.aud.alcatel.com/tcl/code/ > The BUILD_DEPENDS are also entirely wrong, and force gratuitous > repacks of both the TCL and Tk ports (hint - you have to match shared > library names properly, as is done in other ports). OK Thanks. > Oh yeah, they're also not even supposed to be there - we use > LIB_DEPENDS and EXEC_DEPENDS instead now, remember? Is BUILD_DEPENDS deprecated in Makefile then ? or not ? or merely not appropriate in this Makefile ? There is no note for or against usage of BUILD_DEPENDS in current src/share/mk/bsd.port.mk variables definition section. but there is this further down: # The following 4 lines should go away as soon as the ports are all updated .if defined(EXEC_DEPENDS) BUILD_DEPENDS+= ${EXEC_DEPENDS} RUN_DEPENDS+= ${EXEC_DEPENDS} .endif > The entire ports tree switched over quite some time back. I'm not clear, hard to believe you might mean from using BUILD_DEPENDS, as cd /usr/ports ; grep BUILD_DEPENDS */*/Makefile reports: archivers/unzip.with_encryption archivers/zip.with_encryption comms/hylafax comms/rzsz databases/gnats devel/noweb editors/uemacs games/xpacman japanese/ghostscript japanese/kinput2-canna+wnn japanese/kinput2-wnn japanese/mule-wnn japanese/netscape.language japanese/platex japanese/xdvi lang/pTk mail/pgpsendmail mail/smail net/zircon news/nntp print/latex print/latex209 print/musixtex print/texinfo russian/pgp.language security/pgp security/ssh www/gn www/lynx So I guess you mean something else. Is this what it needs ? EXEC_DEPENDS= tcl:${PORTSDIR}/lang/tcl LIB_DEPENDS= tcl\\.7\\.:${PORTSDIR}/lang/tcl LIB_DEPENDS+= tk\\.3\\.:${PORTSDIR}/x11/tk > Anyway, if you manage to get past all of that, you'll fall over > in the build anyway here: > > ===> Building for exmh-1.6.5 > make: cannot open Makefile. > *** Error code 2 I saw this too, but too ntermitently/rarely to be able to debug it. > You forgot to set NO_BUILD since everything for exmh is really done in > the install script. OK, Done ( I haven't created a NO_BUILD port before, it's only used in a few ports: graphics/spigot russian/{ X.language elm.language netscape.language netscape2.language pgp.language } www/arena ) > Also, don't ignore the return status from wish - > it's important! You don't want to run `post-install' if the install > falls over, do you? That'd look pretty funky. Yes right, it was a hangover from when I was testing the Makefile label, & wanted to click the quit button & fast continue the test install. It's gone. > > There are likely a few things Satoshi may want to rearrange to conform with > > bsd.port.mk, but the port is functional, & includes all the packages stuff. > > No, actually this port is almost a textbook example of how to do > almost everything completely wrong! Kids, do NOT try this at home! :-) > > I think you need to go back over the ports collection again and learn > from some of the examples. How to tell a good example from a bad one in a pool of 300 ? Do good ones not contain BUILD_DEPENDS ? > This port is in absolutely no shape to commit, That is a perfectionist attitude. The fixes were trivial, & nearly all involve package stuff, which is not important to those who use source + make install. Not everyone lives & dies by packages. Quite a few people are happy if `make ; make install' can save them time. The Makefile has always been capable of that (apart from the fetch, but there was an alternate site for that too). Not that we don't want packages too, but if it's not in the tree, source users are denied something just because it has'nt been fixed to package users much more demanding requirements. Incidentally, I left the other distfile URL hashed out because I thought bsd.ports.mk couldn't handle 2 alternate distfiles of type site_a:/bla/bla/distfile.gz site_b:blah/blah/distfile.Z (because I've only ever noticed 1 md5 file for a port, + varied EXTRACT_SUFX) I've adopted all your changes, where I could discern your meaning - unfortunately you sent very little specific syntax, context diffs or specific syntax would have reduced your previous & this mail. I've also done other enhancements. I append a new Makefile. Please let me know if you have further problems. > much less use. This is _Nonsense_ ! It's already in use here, I'm using it to write this. The warpper even holds your hand & points the way what to mod. to set a reply-to field for dynamic-ip-no-allocation sites. ` BTW The package is: 327554 /usr/ports/mail/exmh/exmh-1.6.5.tgz That's the bit that might most likely need a tweak or 2, the tk & tcl package bundling stuff for folks without source, this I'm not sure about, & would particularly welcome fixes if necessary. > Oh, and I'm actually be somewhat surprised if Brent were genuinely > interested in any of this - we're talking about FreeBSD's `ports > encapsulation' of his product, after all, and that's something likely > to be of interest only to other FreeBSD ports weenies. Well I imagine he can speak for himself, I cc'd him out of politeness, as his EXMH will get more FreeBSD users. Perhaps you'd like to drop him a note, when the wrapper is commited & announced though ? /usr/ports/mail/exmh/Makefile ----------------{ # New ports collection makefile for: exmh # Version required: 1.6.5 # Date released: 23 Jan '95 # Whom: Julian Stacey <jhs@freebsd.org> # `make install' configures options interactively, using X & wish DISTNAME= exmh-1.6.5 CATEGORIES+= mail KEYWORDS+= x11 # Master site nominated by EXMH author Brent Welch <brent.welch@sun.com> # Wasn't running an ftpd when jhs tried. # MASTER_SITES= ftp://ftp.sunlabs.com/pub/tcl/exmh/ # EXTRACT_SUFX= .tar.Z # Where jhs got his: MASTER_SITES= ftp://ftp.aud.alcatel.com/tcl/code/ MAINTAINER= jhs@FreeBSD.org # IS_INTERACTIVE= yes # make install is interactive, make is not EXEC_DEPENDS= tcl:${PORTSDIR}/lang/tcl LIB_DEPENDS= tcl\\.7\\.:${PORTSDIR}/lang/tcl LIB_DEPENDS+= tk\\.3\\.:${PORTSDIR}/x11/tk NO_BUILD= YES # INSTALL_DEPENDS+= wish # used during interactive installation BUILD_DEPENDS+= ${INSTALL_DEPENDS} # .port.mk has no INSTALL_DEPENDS RUN_DEPENDS+= mh:${PORTSDIR}/mail/mh # Essential RUN_DEPENDS+= x11:${PORTSDIR}/x11/XFree86 # EXMH is X-Windows based # RUN_DEPENDS+= metamail:${PORTSDIR}/mail/metamail # not essential, but nice # RUN_DEPENDS+= expect faces pgp glimpse # not yet configured for these WRKSRC= ${WRKDIR}/${DISTNAME} PREFIX_LIB=${PREFIX}/lib EXMH_MAN=${PREFIX}/man/man1 post-patch: reply-to # gets called by a simple make @echo ${WRKSRC}/lib/report.tcl pre-install: reply-to # does not get called from make install @echo ${WRKSRC}/lib/report.tcl @echo then run make install again. # I have not used something of the form of a popclient style # cp ${WRKSRC}/popclient.man ${WRKSRC}/popclient.1 # as the wish -f exmh.install handles manuals, & is patched by patch-aa pre-package: reply-to # gets called by make package @echo ${PREFIX_LIB}/${DISTNAME}/report.tcl @echo "after having aborted the current 'make package'." @echo "Then run 'make package' again." reply-to: # This warning should be called from various labels @echo -n If the host you are installing on has no permanent Internet @echo " domain address," @echo -n but receives varying dynamicly assigned IP @echo " addresses per connection then in:" @echo " lib/report.tcl" @echo after @echo ' puts $out "Subject: exmh bug"' @echo -n you should append an email Reply-To: field with a valid domain, @echo " example:" @echo ' puts $out "Reply-To: exmh-bug-master@your-host.your-domain"' @echo Please consider running @echo -n " vi -c/Subject: " post-extract: cd ${WRKSRC} ; \ mv exmh-custom.l exmh-custom.1 ; \ mv exmh-ref.l exmh-ref.1 ; \ mv exmh-tables.l exmh-tables.1 ; \ mv exmh-use.l exmh-use.1 ; \ mv exmh.l exmh.1 ; install: if [ ! -d ${PREFIX_LIB}/${DISTNAME} ]; \ then /bin/mkdir -p ${PREFIX_LIB}/${DISTNAME}; fi cd ${WRKSRC} ; wish -f exmh.install make post-install # I've not joined this label to install because in procmail/Makefile it's done # after install. post-install: .if !defined(NOMANCOMPRESS) gzip -9nf ${EXMH_MAN}/exmh-custom.1 ${EXMH_MAN}/exmh-ref.1 \ ${EXMH_MAN}/exmh-tables.1 ${EXMH_MAN}/exmh-use.1 ${EXMH_MAN}/exmh.1 .endif .include <bsd.port.mk> ----------------} -- Julian H. Stacey jhs@freebsd.org http://www.freebsd.org/~jhs/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601242147.WAA03843>