<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>WOW !</span></div><div><span>I'll provide feedback soon.</span></div><div><span>Thanks !</span></div><div><br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><div style="font-size: 12pt; font-family: 'times new roman', 'new york', times, serif; "><div style="font-size: 12pt; font-family: 'times new roman', 'new york', times, serif; "><font size="2" face="Arial"><hr size="1"><b><span style="font-weight:bold;">From:</span></b> Daniel Teske <daniel.teske@nokia.com><br><b><span style="font-weight: bold;">To:</span></b> "necessitas-devel@kde.org" <necessitas-devel@kde.org><br><b><span style="font-weight: bold;">Sent:</span></b> Friday, July 22, 2011 5:08 PM<br><b><span style="font-weight: bold;">Subject:</span></b> Merging the android plugin to Qt
Creator<br></font><br>Hi, <br><br>BogDan recently opened a merge request for the creator changes. So I had a not <br>very through look through it to figure out what needs to be done before we <br>could accept the MR.<br><br>There's general agreement from the Chief Maintainer that a Android plugin fits <br>into Creator. I agree. <br><br>So, my initial issues list, which need to be fixed before we can consider <br>merging the code. I concentrated on those parts that are outside of the <br>android plugin. Don't worry about the lengh of this list, I'll help you <br>getting it sorted out. Also most of it is for Ryan. Also feel free to come to <br>the #qt-creator irc channel to discuss specifics.<br><br>a) Contributor Agreement<br>Everyone that has committed to the qt creator android plugin needs to be added <br>to our internal list of people that have agreed to the contributors agreement, <br>which means everyone needs to do one MR for qt-creator or qt.
<br>Everyone being:<br>BogDan Vatra (already done)<br>mingw-android, Ray Donnelly, Thomas Zander, Marius Bugge Monsen and Espen <br>Riskedal<br><br>b) License<br>Some files currently have no license header at all<br>Most of the other files do have the following header:<br>/*<br>I BogDan Vatra < <a ymailto="mailto:bog_dan_ro@yahoo.com" href="mailto:bog_dan_ro@yahoo.com">bog_dan_ro@yahoo.com</a> >, the copyright holder of this work,<br>hereby release it into the public domain. This applies worldwide.<br><br>In case this is not legally possible, I grant any entity the right to use<br>this work for any purpose, without any conditions, unless such conditions<br>are required by law.<br>*/<br>Considering that some files do have multiple authors, that needs to be fixed.<br>You'll need to decide whether you want to have the plugin under the above <br>license, then all authors must agree to that, or if you want to go with the <br>standard LGPL. A situation
where some parts are by BogDan are in the public <br>domain and other author's work is not is theoretically possible, but really <br>not a good option.<br><br>c) Target branch<br>2.3 is already feature frozen, so the target branch should be master. <br>Currently master merges cleanly into the MR.<br><br>d) Changes I'll integrate to master<br>The commit 43240a9 MinGW compilation fixes for private headers <br>Exporting Qt4ProjectManager::QMakeStep and Qt4ProjectManager::MakeStep<br><br>e) Changes to the android plugin<br>I have attached a few commits for stuff that was pretty easy to fix:<br><br>0001-Remove-wrong-merge-resolution.patch<br>The code moved in between the merges and is already fixed at the new place.<br><br>0002-Remove-accidentally-added-.commit.template.patch<br>The commit message didn't mention the .commit.tempalte, I assumed it was <br>commited in error. I could also add the .commit.template to master if you want
<br>that.<br><br>0003-Remove-unecessary-whitespace-changes.patch<br><br>0004-Unecessary-change-to-import-code.patch<br>The code there is only used for importing .user files that are pre 2.0, as such <br>the code change should be unecessary.<br><br>0005-Simplfy-template-code.patch<br>0006-Reformat-deployment.pri-to-be-more-readeable.patch<br>0007-Bump-stub-version-of-template.patch<br>Those 3 patches change the template to what I think is better. Also see <br>comments below.<br><br>0008-Remove-settign-of-ANDROID_NDK_HOST-from-necessitas.b.patch<br>See commit message.<br><br>Feel free to submit them to the applicable branch.<br><br>f) mingw/*<br>Those files need to be removed from the MR for hopefully obvious reasons.<br><br>g) macdeployqt/*<br>============= TODO look at the patches<br>There is unfourtanetly no maintainer for macdeployqt, but the patches should <br>be made against the macdeployqt in qt. <br><br>h) Changes in src/tools/qpatch<br>After a
quick discussion at the office we removed src/tools/qpatch completely <br>from master since it is neither used by the stand alone creator packages nor <br>by the sdk and is known to be buggy.<br>I'd recommend instead of patching and using qpatch to use the facilities in <br>the QtSDK found in installer-framework/installerbuilder/libinstaller/qtpatch <br>and installerbuilder/libinstaller/qtpatchoperation.cpp and then backing out <br>the changes to qpatch<br><br>i) build.sh<br>We don't want that as part of the creator repository. As far as we are <br>concerned building creator should be done in a normal cmd shell on windows and <br>not in a msys shell.<br><br>j) bin/necessitas and bin/necessitas.bat<br>The setting of ANDROID_NDK_HOST seemed to be a left over from before setting <br>it in androidtoolchain.cpp, so I removed it, see attached patch.<br>We used to have a similar LD_LIBRARY_PATH setting script on linux but after <br>some internal discussions we
removed it. On windows<br><br>k) Settings Path and Renaming to Necessitas<br>We think if we merge the android plugin into creator, then there is no point <br>in renaming Qt Creator and no point in using a different settings path. The sdk <br>team also wants to produce "one" sdk that can install components from different <br>providers.<br>If you do want to have a different name/settings path, then there are quite a <br>few places which need to be fixed and the default should be "Qt Creator" not <br>"Necessitas Qt Creator"<br><br>l) qtcreator.rc<br>I don't understand the need to change the file and the commit mesage doesn't <br>explain it either: "Fix errors in qtcreator.rc by saving it from Visual <br>Studio"<br><br>We are compiling qt creator with visual studio and have no problems at all <br>with qtcreator.rc, so could you explain why you need this change?<br><br>m) qmakeStep::moreArguments()<br>Adding the "-win32" to the qmake command line. As far as
I understand you want <br>to have qmake run in HOST_WIN_MODE on windows. But that is the default if <br>qmake is compiled for windows.<br><br>n) lowerCasing in qt4buildconfiguration.cpp<br>#ifdefing out the lowercasing of specs<br>"Don't do the toLower stuff on lots of paths when Q_OS_WIN and __MINGW32__ is <br>defined. This is an aesthetic thing. I don't like showing all pahs in lower <br>case."<br>The paths are lowercased to compare them against each other, without the <br>lowercasing the comparision will fail for paths that are the same. Thus since <br>the change is just for aesthetics, I'd back it out again.<br><br>o) profileeavluator.cpp<br>The profileevaluator in creator should behave the same as the one in qmake.<br>And the evaluator in qmake lowercases the first device letter (even if that's <br>not correct) and uses "\" on windows. I guess the drive letter change is just <br>for asthetics? What does the path separator break? Does that have
something to <br>do with msys?<br><br>p) debugger plugin<br>The debbuger plugin has quite a few changes, some of them seem to be hacks.<br>Also I'm not that well versed in the debugger plugins code, though I discussed <br>a earlier diff with the debugger maintainer (Andre).<br>I'm somewhat confussed whether you are using the python dumpers, or not.<br>So, the changes:<br>Adding "arm-linux-androideabi" to gnuTargets: fine<br><br>soLibSearchPath: in general looks fine, andre mentioned some details he wanted <br>to see fixed<br><br>Always offering all toolchains in DebuggerToolChainComboBox::init<br>The commit message already classifies that as a hack, I just don't understand <br>why it was needed. The check for hostAbi.os() == abi.os() should be true for <br>msys toolchains too. Or is .os() broken for msys toolchains?<br><br>Disabling setting PYTHONPATH. Why is that needed? Note that the code that is <br>disabled was rewritten a lot since you disabled
it.<br><br>q) abi.h abi.cpp<br>The change looks good, but can't be merged without the rest of the android <br>plugin.<br><br>r) templates/qtquickapp/*<br>The changes looked almost okay. I didn't understand the setBaseUrl() change, <br>nor can I see how that makes sense. I reformatted some of the code for better <br>readability and added a bumping of the template version. (Projects with prior <br>template versions are automatically updated then.) See the attached patches.<br><br>s) main.cpp #ifdef<br>There is a change in main.cpp changing the plugin search paths to be only <br>searched on the "matching" platform. The commit message is:<br>"Mac OS X: Fix for case sensitive filesystems (had mixed plugins/PlugIns, <br>always uses PlugIns now)"<br>Ray can you explain what that commit fixes? That sounds like something I could <br>cherry-pick to master.<br><br>t) main.cpp myMessageOutput<br>The main motivation for that seems to be:<br>"qInstallMsgHandler so
that asserts are not fatal"<br>We like Q_ASSERTS to be fatal, we do have a separate macro QTC_ASSERT for <br>cases where a non fatal handling is possible/desired.<br><br>u) Settings SystemScope to UserScope<br>Quite a few settings (if not all) are using the UserScope instead of the <br>SystemScope. Why is that needed?<br><br>I might have missed a few changes here and there.<br><br>I'm looking forward to working on that. :)<br><br>daniel<br><br>-- <br>Daniel Teske<br>Software Engineer<br>Nokia, Qt Development Frameworks<br><br>Nokia gate5 GmbH<br>Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany<br>Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B<br>Umsatzsteueridentifikationsnummer: DE 812 845 193<br>Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori<br><br>_______________________________________________<br>Necessitas-devel mailing list<br><a ymailto="mailto:Necessitas-devel@kde.org"
href="mailto:Necessitas-devel@kde.org">Necessitas-devel@kde.org</a><br><a href="https://mail.kde.org/mailman/listinfo/necessitas-devel" target="_blank">https://mail.kde.org/mailman/listinfo/necessitas-devel</a><br><br><br></div></div></blockquote></div></div></body></html>