Bug 189010 - [new port] revive port devel/ecgi - (easy CGI Libary) maintainer-update - stage
Summary: [new port] revive port devel/ecgi - (easy CGI Libary) maintainer-update - stage
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: John Marino
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-26 10:20 UTC by Chris Hutchinson
Modified: 2014-06-14 10:15 UTC (History)
2 users (show)

See Also:


Attachments
file.shar (7.27 KB, text/plain)
2014-04-26 10:20 UTC, Chris Hutchinson
no flags Details
Makefile.update (367 bytes, patch)
2014-04-26 10:32 UTC, Chris Hutchinson
no flags Details | Diff
Makefile.patch (356 bytes, patch)
2014-04-26 10:50 UTC, Chris Hutchinson
no flags Details | Diff
UPDATE superceeds previous attachments (7.39 KB, text/shar)
2014-06-13 21:41 UTC, Chris Hutchinson
no flags Details
Includes recommends (demands) proposed. ;) (7.41 KB, text/shar)
2014-06-14 00:31 UTC, Chris Hutchinson
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Hutchinson 2014-04-26 10:20:00 UTC
new port
devel/ecgi
stage-complete
maintainer-update

ecgi (easy CGI Libary) is an ANSI C library for the creation of
CGI-based Web applications.

Fix: commit attached.

Patch attached with submission follows:
Comment 1 Chris Hutchinson 2014-04-26 10:32:59 UTC
Overlooked a missing ${STAGEDIR}

see attached match to add the missing ${STAGEDIR}
Comment 2 Chris Hutchinson 2014-04-26 10:50:46 UTC
Gah! That's it. It's late, and I'm through for the nite.
Sorry. PLEASE disregard the last update to the Makefile I attached.
I didn't move ${STAGEDIR} I /added/ one. :P

Please use the one attached (Makefile.patch) to this message, instead.
Once again, sooo sorry.
Comment 3 John Marino freebsd_committer freebsd_triage 2014-06-11 14:36:39 UTC
Comment on attachment 142050 [details]
Makefile.update

patch has error, ignore
Comment 4 John Marino freebsd_committer freebsd_triage 2014-06-11 14:41:18 UTC
This is already obsolete.
Just looking at shar, I see these problems:

1) indefinite article in COMMENT
2) USE_GMAKE instead of USES+= gmake
3) possible redundant redefinition of WRKSRC
4) NOPORTDOCS used instead of PORT_OPTIONS - DOCS
plus the bug that was fixed with patch

Do you want to take this back, fix those issues (mostly simple) and resubmit a clean shar?
Comment 5 Chris Hutchinson 2014-06-11 15:16:20 UTC
(In reply to John Marino from comment #4)
> This is already obsolete.
> Just looking at shar, I see these problems:
> 
> 1) indefinite article in COMMENT
> 2) USE_GMAKE instead of USES+= gmake
> 3) possible redundant redefinition of WRKSRC
> 4) NOPORTDOCS used instead of PORT_OPTIONS - DOCS
> plus the bug that was fixed with patch
> 
> Do you want to take this back, fix those issues (mostly simple) and resubmit
> a clean shar?

Yes. Will do.
I'll fix the issues, and post them here.

Thank you!

--Chris
Comment 6 Chris Hutchinson 2014-06-13 21:41:01 UTC
Created attachment 143758 [details]
UPDATE superceeds previous attachments

OK. Looks like this gets it (see attached: ecgi.shar).

Yes. NOPORTDOCS still exists. But at the moment it's still
supported, and I will reconcile this soon.

Thanks, and hope it meets _current_ expectations. :)

--Chris
Comment 7 John Marino freebsd_committer freebsd_triage 2014-06-13 21:53:27 UTC
what's the issue with removing NOPORTDOCS?

I'm not going to revive a port with deprecated knobs like NOPORTDOCS, which leads to the consequence of me converting it before committing.  It's not that hard so I probably will.  I just don't understand why you left it for me.

e.g USE_BZIP2=yes is still supported, but I won't put that on new ports either.  Somebody would point that out as a mistake.
Comment 8 Chris Hutchinson 2014-06-13 23:58:15 UTC
(In reply to John Marino from comment #7)
> what's the issue with removing NOPORTDOCS?
> 
> I'm not going to revive a port with deprecated knobs like NOPORTDOCS, which
> leads to the consequence of me converting it before committing.  It's not
> that hard so I probably will.  I just don't understand why you left it for
> me.
> 
> e.g USE_BZIP2=yes is still supported, but I won't put that on new ports
> either.  Somebody would point that out as a mistake.

Sorry, John.

I hadn't decided how I how wanted to best implement it.
But, given your WELL NOTED arguments. I decided to go
this route. Unless you have any objection. I'll pack up
a new shar(1), obsoleting the previous, and we'll call it
"a wrap". :)

PS I've since added LICENSE, and replaced the second line
in the Makefile with $FreeBSD$

Proposed CORRECTIONS follow:

OPTIONS_DEFINE=	DOCS
OPTIONS_DEFAULT=DOCS

.include <bsd.port.options.mk>

...

.if ${PORT_OPTIONS:MDOCS}
@${MKDIR} ${STAGEDIR}${DOCSDIR}
	${INSTALL_DATA} ${WRKSRC}/doc/ecgitut.txt ${STAGEDIR}${DOCSDIR}
.else
OPTIONS_EXCLUDE+= DOCS
.endif


Thanks, and apologies for being such a pain in the a$$
Comment 9 Chris Hutchinson 2014-06-14 00:31:25 UTC
Created attachment 143765 [details]
Includes recommends (demands) proposed. ;)

OK. COMPLETELY ignore my previously "proposed" corrections.
They were off the top of my "pointy" head.

Included in the attached shar(1) (ecgi-new.shar) is everything
that one would expect -- portlint(1) agrees. But complains
about having only one MASTER_SITES, and [wrongly] complains
about COMMENT.

Thanks again, John.

Hope this meets your standards. :)

--Chris
Comment 10 Chris Hutchinson 2014-06-14 00:56:01 UTC
(In reply to C Hutchinson from comment #9)
> Created attachment 143765 [details]
> Includes recommends (demands) proposed. ;)
> 
> OK. COMPLETELY ignore my previously "proposed" corrections.
> They were off the top of my "pointy" head.
> 
> Included in the attached shar(1) (ecgi-new.shar) is everything
> that one would expect -- portlint(1) agrees. But complains
> about having only one MASTER_SITES, and [wrongly] complains
> about COMMENT.
> 
> Thanks again, John.
> 
> Hope this meets your standards. :)
> 
> --Chris

PS
If it were up to me, you would be awarded with the "Commit Bit of the Year"
just for having to deal with all the extra B$ if caused you. :)

--Chris
Comment 11 John Marino freebsd_committer freebsd_triage 2014-06-14 06:44:04 UTC
Okay, thanks.
The complaint about COMMENT is not wrong though.  I've already mentioned this particular rule a few times now (You can't start a comment with an indefinite article).  so portlint is right to warn about that and I'll have to change that.
Comment 12 John Marino freebsd_committer freebsd_triage 2014-06-14 08:46:56 UTC
I am curious, do you have tabs set to 4 spaces or something?  You should using hard tabs (equivalent to 8 spaces).  The Makefile lines aren't aligned.  I'd guess inconsistent tab setting is the reason.
Comment 13 John Marino freebsd_committer freebsd_triage 2014-06-14 08:51:41 UTC
I appreciate the attempt to convert to DOCS (and then hardcoding it not to).

Your error was not adding ".include <bsd.port.options.mk>" after the OPTIONS definition.  You don't need to set DOCS as default because it aways is (it's set behind the scenes) so that line is redundant.

I'm fixing all this, but you should study the result later.
Comment 14 John Marino freebsd_committer freebsd_triage 2014-06-14 08:54:45 UTC
P.S.  Likewise DOCS_DESC is already defined.  This is the case for many common option names.
Comment 15 John Marino freebsd_committer freebsd_triage 2014-06-14 09:08:41 UTC
running commentary:

I see USES+= gmake followed by USES= tar.xz

A) you could have combined this on one line
B) because the second line doesn't have "+=" you redefined USES, so you lost USES=gmake
C) the first instance of USES needs "=", not "+=" unless it's a master port (because a slave could have already defined USES)

so that's a straight up error.  I'm fixing...
Comment 16 John Marino freebsd_committer freebsd_triage 2014-06-14 09:10:20 UTC
running commentary:
Advanced stuff, but I see zero need for use LD_CONFIG=yes.

The libraries are in a standard location.
The original maintainer probably didn't know what this did.
Comment 17 John Marino freebsd_committer freebsd_triage 2014-06-14 09:21:19 UTC
running commentary:
You didn't review my previous comment "3) possible redundant redefinition of WRKSRC"

I confirmed, this is completely redundant.  It defines WRKSRC to the default definition, it needs to be removed.
Comment 18 John Marino freebsd_committer freebsd_triage 2014-06-14 09:31:47 UTC
running commentary:
1 out of 2 hunks failed--saving rejects to html2h/html2h.c.rej
=> Patch patch-html2h_html2h.c failed to apply cleanly.

Ouch!  investigating.
Comment 19 John Marino freebsd_committer freebsd_triage 2014-06-14 09:45:21 UTC
running commentary:
I had to regenerate two patches (src/ecgitk too), seems to have had whitespace issues.

I think you really, really need to install poudriere and test all your future submissions using "poudriere testport".  It will help everyone.
Comment 20 commit-hook freebsd_committer freebsd_triage 2014-06-14 10:11:05 UTC
A commit references this bug:

Author: marino
Date: Sat Jun 14 10:11:03 UTC 2014
New revision: 357760
URL: http://svnweb.freebsd.org/changeset/ports/357760

Log:
  Resurrect devel/ecgi with stage support

  The port had been essentially unmaintained since 2006 and was removed
  three years ago.  It needs some TLC to bring it up to modern standards.
  Pass maintainership to submitter.

  PR:		189010
  Submitted by:	Chris Hutchinson
  Add'l fixes by:	marino

Changes:
  head/MOVED
  head/devel/Makefile
  head/devel/ecgi/
  head/devel/ecgi/Makefile
  head/devel/ecgi/distinfo
  head/devel/ecgi/files/patch-Makefile
  head/devel/ecgi/files/patch-html2h::Makefile
  head/devel/ecgi/files/patch-html2h::html2h.c
  head/devel/ecgi/files/patch-html2h_Makefile
  head/devel/ecgi/files/patch-html2h_html2h.c
  head/devel/ecgi/files/patch-src::ecgitk.c
  head/devel/ecgi/files/patch-src_ecgitk.c
  head/devel/ecgi/pkg-descr
Comment 21 John Marino freebsd_committer freebsd_triage 2014-06-14 10:15:46 UTC
Okay, this one ended up costing me a ton of time as well, so please review all the additional changes I made.

I really urge you to install poudriere and start using this valuable tool to test future submissions.  Once you see what it can do, you'll be really happy with it.