Created attachment 154213 [details] codelite.patch Hi, I would like to adopt port editors/codelite Attached is a patch that takes codelite to version 7.0
Fails to build on all supported versions: http://people.freebsd.org/~pawel/buildlogs/codelite-7.0-9amd64.log http://people.freebsd.org/~pawel/buildlogs/codelite-7.0-10amd64.log
hmm, my poudriere builds have been without the CLANG option (by mistake). I'll fix, test and post a new patch Thanks for the notification.
Created attachment 154457 [details] codelite.patch revision 2
new patch attached to bug report - poudriere builds for freebsd 9 and 10 are succesful - my disk with freebsd 8 jail just died I have currently missing a replacement to the time being.
Update: found new disk and now got space for freebsd 8 jail in poudriere bad news is that the freebsd-8-amd64 poudriere build fails because llvm36 is broken on FreeBSD < 9. llvm is a requirement for clang36 clang35/llvm35 is also broken for FreeBSD < 8. clang34/llvm34 is not - but I wanted to get away from clang34/llvm34 because of problems with that combination within codelite (clang is used for runtime codecompletion withon codelite) I need some advice here on what to do - would it be ok to only deliver editors/codelite on FreeBSD 9.x and 10.X only - avoiding FreeBSD 8.x ? Thanks
While testing I noticed 8.x problem too. Maybe it would be good idea to enable CLANG option by default for FreeBSD versions 9 and up? This way port will build on 8.x with limited functionality.
Created attachment 154562 [details] codelite.patch revision 7
New patch uploaded Poudriere builds for FreeBSD 8, 9 and 10 have run succesfully.
Patch partially rejects to apply on freshly checked out repo: Hmm... Looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/Makefile |+++ b/editors/codelite/Makefile -------------------------- Patching file Makefile using Plan A... Hunk #1 succeeded at 2 with fuzz 1. Hunk #2 succeeded at 21. Hunk #3 succeeded at 38. Hunk #4 succeeded at 51. Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/distinfo |+++ b/editors/codelite/distinfo -------------------------- Patching file distinfo using Plan A... Hunk #1 succeeded at 1. Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/files/patch-CMakeLists.txt |+++ b/editors/codelite/files/patch-CMakeLists.txt -------------------------- Patching file files/patch-CMakeLists.txt using Plan A... Hunk #1 succeeded at 29 with fuzz 2. Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/files/patch-Runtime_codelite_xterm |+++ b/editors/codelite/files/patch-Runtime_codelite_xterm -------------------------- Patching file files/patch-Runtime_codelite_xterm using Plan A... Hunk #1 failed at 1. 1 out of 1 hunks failed--saving rejects to files/patch-Runtime_codelite_xterm.rej Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/files/patch-clang |+++ b/editors/codelite/files/patch-clang -------------------------- Patching file files/patch-clang using Plan A... Hunk #1 failed at 1. 1 out of 1 hunks failed--saving rejects to files/patch-clang.rej Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/files/patch-commit-7ebf3e0 |+++ /dev/null -------------------------- Patching file files/patch-commit-7ebf3e0 using Plan A... Empty context always matches. Hunk #1 failed at 0. 1 out of 1 hunks failed--saving rejects to files/patch-commit-7ebf3e0.rej Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/files/patch-commit-b618667 |+++ /dev/null -------------------------- Patching file files/patch-commit-b618667 using Plan A... Empty context always matches. Hunk #1 failed at 0. 1 out of 1 hunks failed--saving rejects to files/patch-commit-b618667.rej Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/files/patch-sdk_codelite_indexer_CMakeLists.txt |+++ b/editors/codelite/files/patch-sdk_codelite_indexer_CMakeLists.txt -------------------------- Patching file files/patch-sdk_codelite_indexer_CMakeLists.txt using Plan A... Hunk #1 failed at 5. 1 out of 1 hunks failed--saving rejects to files/patch-sdk_codelite_indexer_CMakeLists.txt.rej Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- a/editors/codelite/pkg-plist |+++ b/editors/codelite/pkg-plist -------------------------- Patching file pkg-plist using Plan A... Hunk #1 succeeded at 1. Hunk #2 succeeded at 30. Hunk #3 succeeded at 44. Hunk #4 succeeded at 61. Hunk #5 succeeded at 81. Hunk #6 succeeded at 152. Hunk #7 succeeded at 166. Hunk #8 succeeded at 380. Hunk #9 succeeded at 525. Hunk #10 succeeded at 766. done
Hmm how do I supply a patch that deletes (patch) files ? That counts for two of the failed diff-merges below These files are to be deleted: files/patch-commit-b618667 files/patch-commit-7ebf3e0 I'll look into the other patch conflicts
First version of patch was patching and removing obsolete files just fine - svn diff output is the best way to create patches, just one need to remember to svn rm / svn add files to make patch complete. Failing patch seems to be created by git and both patch from base and gpatch from devel/patch fail to apply it. Also OSVERSION can be used only after .include <bsd.port.pre.mk> or .include <bsd.port.options.mk> otherwise make will fail because OSVERSION will not be declared.
Created attachment 155135 [details] codelite.patch revision9
please disregard åaatch revision 9 - is not perfect - still one problem remains. I need som advise here: OPTIONS_DEFAULT needs to be set before including bsd.port.pre.mk But in order to eval what to setup OPTIONS_DEFAULT to I need to check OSVERSION - and that one needs to have bsd.port.pre.mk included - seems like a catch 22 - did I miss anything here ? Thanks in advance
This works for me, little hackish though: OPTIONS_DEFAULT= CSCOPE ${CLANG_OPT} .include <bsd.port.pre.mk> # lang/clang36 doesn't build on 8.x .if ${OSVERSION} >= 900000 BUILD_DEPENDS+= clang36>0:${PORTSDIR}/lang/clang36 RUN_DEPENDS+= clang36>0:${PORTSDIR}/lang/clang36 CMAKE_ARGS+= -DENABLE_CLANG=1 CLANG_OPT= CLANG .else CMAKE_ARGS+= -DENABLE_CLANG=0 .endif [..] .include <bsd.port.post.mk> Few more things I noticed while reviewing: - port uses old USE_GITHUB syntax, see /usr/ports/CHANGES, entry 20150319 - options declarations should be last thing before .include <bsd.port.(options|pre).mk>, right now they are badly scattered and placed - it would be nice to use options helpers where possible eg.: CSCOPE_RUN_DEPENDS= cscope:${PORTSDIR}/devel/cscope etc - clang 3.6 is imported in current since OSVERSION 1100065 also it would be good to handle that gracefully without pulling clang36 from ports
Created attachment 155190 [details] codelite.patch revision 10
codelite patch rev10 attached - including the changes suggested by you. Please note that I'll not be able to do poudriere builds before next week - I only got a low capacity netbook here at home during the easter.
While changes go in right direction port still does not build on any supported release.
Port is now at version 8.1