Created attachment 145410 [details]
- Update to 2.5
- Support STAGE and remove DEPRECATED
- Claim maintainership
Thanks for providing test logs, that makes it easy to classify as "patch-ready"
Created attachment 145493 [details]
I'm testing your port. I made a few changes. First of all the software does build correctly with clang with just a few fixes and has no problem with MAKE_JOBS.
I leveraged USES=compiler to make it work with clang. As it is now this brings in a clang dependency on OS versions without it or with an older version by default, as USES=compiler prefers clang whenever possible. This can also be overridden by users with "FAVORITE_COMPILER=gcc" in make.conf though, and compiler will try to use a gcc version to satisfy the requirement.
To make it compile with clang I took a few patches from the upstream ufoai repository on github. These patches come from there:
this file I did patch, and the patch is clean enough to be sent upstream:
While this final patch I did make but it's really ugly, it needs to be reviewed by someone who knows C++ better than me, anyway it works fine:
The port was completely broken with the UFORADIANT option turned on, even as it is in the ports tree now. I fixed that, that option also unserwent a partial conversion to the optionsng framework in the past, there still were references to WITH_UFORADIANT around!(not your fault), I lao had to tweak the do-install target to make the uforadiant software really start once installed. It was missing files.
Please note I was able to start radiant an do something ith it's windows, but I have no idea how to use the software, I assume it works since it did not crash :)
The software build system was using these options:
-falign-loops=2 -falign-jumps=2 -falign-functions=2
which are unsupported by clang, and it errors out with them, so I added a conditional to sed them out when using clang as a compiler.
A few more smaller things:
Added USES=execinfo in place of explicit execinfo depend.
USE_PYTHON_BUILD=yes causes the system to already add a dependency on python, so I removed the explicit one.
Finally, You have not put yourself as MAINTAINER for games/ufoai, I have in my patch.
At the same time you put yourself as maintainer for ufoai-data, which already has a maintainer.
Now, I think these ports should be maintained by the same person, so I agree on assigning them both to you, in you confirm this is your intention, but since it is usually required to get approval to change maintainer I'm going to add acm to this PR, and ask for approval.
In the while can you review and test my patch and approve it? Thanks!
Thanks for you work!
Changes you made looks fine.
And yes, I know ufoai-data port is currently maintained by acm@. Of cause we need to get an approval from him.
Did you notice this PR?
Is it ok with you handling ufoai-data maintainership to the submitter?
I''d like to commit this one before the timeout for unstaged ports, so if I don't get a reply from you in the next few days I'll have to ask portmgr to approve the change.
Thanks in advance and sorry for rushing you!
Created attachment 146197 [details]
I have updated the patch in the while.
I converted it to USES=python:build
I also force gcc as a compiler on FreeBSD versions where clang isn't the default, due to problems with command line arguments I have observed in poudriere when dependencies are compiled with gcc.
To submitter, please review these changes.
A commit references this bug:
Date: Mon Aug 25 10:16:45 UTC 2014
New revision: 366053
- Update games/ufoai and games/ufoai-data to 2.5
- Stagify games/ufoai
- Modernize port
- Fix UFORADIANT option (off by default)
- Assign maintainership to submitter 
Submitted by: m.tsatsenko at gmail.com
Approved by: portmgr