Bug 198523 - [ADOPT PORT] editors/codelite: update to new version (7.0)
Summary: [ADOPT PORT] editors/codelite: update to new version (7.0)
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Pawel Pekala
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-11 18:54 UTC by Uffe Jakobsen
Modified: 2015-08-16 20:59 UTC (History)
2 users (show)

See Also:


Attachments
codelite.patch (27.95 KB, patch)
2015-03-11 18:54 UTC, Uffe Jakobsen
no flags Details | Diff
codelite.patch revision 2 (28.23 KB, patch)
2015-03-17 15:41 UTC, Uffe Jakobsen
no flags Details | Diff
codelite.patch revision 7 (30.10 KB, patch)
2015-03-20 11:05 UTC, Uffe Jakobsen
no flags Details | Diff
codelite.patch revision9 (29.24 KB, patch)
2015-04-02 22:23 UTC, Uffe Jakobsen
no flags Details | Diff
codelite.patch revision 10 (29.86 KB, patch)
2015-04-04 20:18 UTC, Uffe Jakobsen
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Uffe Jakobsen 2015-03-11 18:54:02 UTC
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
Comment 2 Uffe Jakobsen 2015-03-16 17:03:54 UTC
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.
Comment 3 Uffe Jakobsen 2015-03-17 15:41:43 UTC
Created attachment 154457 [details]
codelite.patch revision 2
Comment 4 Uffe Jakobsen 2015-03-17 15:44:15 UTC
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.
Comment 5 Uffe Jakobsen 2015-03-18 19:42:00 UTC
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
Comment 6 Pawel Pekala freebsd_committer freebsd_triage 2015-03-18 20:02:37 UTC
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.
Comment 7 Uffe Jakobsen 2015-03-20 11:05:16 UTC
Created attachment 154562 [details]
codelite.patch revision 7
Comment 8 Uffe Jakobsen 2015-03-20 11:06:17 UTC
New patch uploaded

Poudriere builds for FreeBSD 8, 9 and 10 have run succesfully.
Comment 9 Pawel Pekala freebsd_committer freebsd_triage 2015-03-23 21:19:57 UTC
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
Comment 10 Uffe Jakobsen 2015-03-24 12:57:38 UTC
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
Comment 11 Pawel Pekala freebsd_committer freebsd_triage 2015-03-24 20:46:42 UTC
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.
Comment 12 Uffe Jakobsen 2015-04-02 22:23:54 UTC
Created attachment 155135 [details]
codelite.patch revision9
Comment 13 Uffe Jakobsen 2015-04-03 18:40:44 UTC
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
Comment 14 Pawel Pekala freebsd_committer freebsd_triage 2015-04-04 11:11:14 UTC
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
Comment 15 Uffe Jakobsen 2015-04-04 20:18:11 UTC
Created attachment 155190 [details]
codelite.patch revision 10
Comment 16 Uffe Jakobsen 2015-04-04 20:20:34 UTC
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.
Comment 17 Pawel Pekala freebsd_committer freebsd_triage 2015-04-17 20:36:18 UTC
While changes go in right direction port still does not build
on any supported release.
Comment 18 Pawel Pekala freebsd_committer freebsd_triage 2015-08-16 20:59:14 UTC
Port is now at version 8.1