Please add this ebuild and patch to the portage tree. I have tested with all USE flags and can verify it is working properly. As a nice side effect, this would enable closure on the following: bug #150831, bug #155372, and bug #171739. The patch given in bug #155372 has been modified due to version changes. I have forwarded the patch upstream and hopefully it will be accepted soon. I would also like to become the maintainer for the suite3270 package as I use it on a regular basis to perform the duties of my daytime job. It is therefore important to me that the package be actively maintained and correct. Thanks!! Reproducible: Always
Adding Torsten to CC.
Created attachment 118144 [details] ebuild for latest upstream release
Created attachment 118146 [details] USE="cjk" fix (sent upstream)
Created attachment 118171 [details] ebuild, suggestions from #g-dev-help incorporated just a couple of minor tweaks to the ebuild after suggestions posted by kind folk in freenode#gentoo-dev-help
Created attachment 118678 [details, diff] complete rollup in one single patch requested by Robin, here is one single patch which: * removes all but the latest version of suite3270 because the older versions.. - aren't really supported upstream - don't have any of the up-level bug fixes - have ebuilds which are just plain broken under various USE= configs * brings us up to date with the upstream version released on April 29th * and will allow us to close bugs - bug #150831 as RESOLVED LATER - bug #155372 as RESOLVED LATER - bug #177042 as FIXED Thanks!!
jieryn: you mis-understood my email. I said to email me the initial patches directly to me, so that I could go through your changes line-by-line as your initial proxy-maintainer submission to me. When you roll patches together like you just did, please exclude the removals, and list those seperately, as applying directly would just leave them as 0-byte files. Since you dumped stuff in here instead, I'll just list problems directly here, but beware that the list might be hard to follow since they aren't inline comments in a diff. 1. You must have RDEPEND and DEPEND seperately, as the following packages should only exist in DEPEND, and not RDEPEND: x11-proto/xproto, x11-misc/imake, app-text/rman. 2. Line: "use cjk && epatch ${FILESDIR}/makeconv-${V1}.${V2}.${V3}.patch || die" You cannot use || die after an && conditional. In the case of USE=-cjk, the epatch path is NOT taken, but the || patch IS, leading to die being triggered anyway when it shouldn't at all. 3. Same line, "|| die" after epatch will never be reached, as epatch dies itself on error. 4. Same line, hardcode the version number in the file that you are passing to epatch, so that it does not have to change when the ebuild is version bumped. So you should use: "makeconv-3.3.5.patch" instead of your V1/V2/V3 variables there. 5. Go back to using the SUB_PV constantly defined variable instead of having V1/V2 dynamically set, as bash function calls in the global ebuild scope may be called many times during phases where they are not used. 6. no "|| die" after econf, same reason as epatch. 7. when you do use 'die' correctly, please provide an a string so that the user can see what went wrong. Eg: emake || die "failed to compile portion ${p}" 8. Are the install targets parallel safe? If not, add -j1 to the emake install line. 9. Line "use X && rm "${D}/${MY_FONTDIR}/fonts.dir". Firstly if USE=-X is in play, the non-zero error return code passes OUT of src_install. This is bad form, and may cause termination in some cases. Place an explicit 'return 0' on the next line. 10. Same line again, if the file does not exist, plain "rm" would return non-zero again. Use "rm -f" instead. 11. Style-related: In Gentoo scripts (ebuilds, eclasses, bash, etc) { always goes on the same line as the function definition.
Created attachment 118885 [details, diff] fixup for suite3270 - including Robin's fixes Thanks for the advice, I have incorporated the changes you suggest. During the course of testing, I found a non-fatal problem (fix is simple and contained in files/configure-3.3.5.patch; sent upstream) for USE="cjk" users. As before, this would close out all existing bugs and also should lead to removal from the tree of the unmaintained versions (both here, and upstream). Thanks!! :)
Created attachment 118886 [details, diff] suite3270.ebuild final answer Ooops. I left two debugging einfo $? in the previous ebuild, fixed.
Is your patch corrupt? # patch --dry-run -p1 -d . -i p patching file files/configure-3.3.5.patch patching file files/makeconv-3.3.5.patch patching file suite3270-3.3.5_p8.ebuild patch: **** unexpected end of file in patch By the hunkspec (@@ -0,0 +1,95 @@), there should be 94 lines in the hunk contents, but only 91 are present. Did you edit something off the end of the patch and miss changing the hunkspec?
Created attachment 118956 [details] properly generated patch Robin, you're right. I tried to short cut the patch by just killing off the einfo $? lines. I didn't realize that the hunk data would have detected the problem. Sorry.
For direct-editing patches, you should use recountdiff (from patchutils) afterwards if the number of lines have changed ;-). I reviewed your newer version, and here are the changes again, that I'll fixing myself and committing, but also telling you about, so that you know for future submissions. Your contact information is also going into the metadata.xml, so that you'll be cc'd on all bugs when they are submitted. 1. Style related, DEPEND/RDEPEND when split over multiple lines should be indented for ease of reading. Each level should line up (See the ebuild for this one, leading tabs, then spaces, ts=4 in vim). 2. in src_unpack, unpack and cd on seperate lines. 3. Your 'if use cjk;' is a step too far in the other directory from your previous version. 'use cjk && epatch ...' \n 'return 0' is the most correct version. 4. Group use_enable/use_with blocks together (and alphabetical if you want to) if there are only a small number of them, and by functional over the top if there are a lot. 5. Options to emake/make always come before other arguments, so 'emake -j1 ...' 6. again 'if use X' to 'use X && rm -f ...' \n 'return 0'.
Some other final bits I missed in my test-pass before committing: 1. (Not well documented anywhere, but good practice) - in the top of patches, include some description information (see your two patches). 2. You had a stable keyword for x86 in the patch. Should be ~arch only. 3. Underneath your 'Patches were sent upstream to maintainer' comment, I added the date and your identity, so everybody knows who to ask about the status of that.
All in the tree now. Bug 178136 created for stabilization to start in 2 weeks, and thereafter we can remove the old versions that are presently available in stable.