[TIMOB-18071] CLI: Fail build if compiled architectures do not match module manifest
GitHub Issue | n/a |
---|---|
Type | Improvement |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2014-12-15T19:29:57.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 3.5.0, Release 4.0.0 |
Components | Android, BlackBerry, CLI, iOS, Tooling |
Labels | qe-assigned |
Reporter | Ingo Muschenetz |
Assignee | Tim Poulsen |
Created | 2014-11-21T20:43:07.000+0000 |
Updated | 2015-01-18T04:14:33.000+0000 |
Description
With the addition of 64-bit support, it becomes helpful to know the architectures available in a compiled module. We can then use this ins tooling to make sure modules are compiled correctly for use.
See TIMOB-18065 for more information.
Once the module build is complete, we need to check the architectures specified and fail the build if they do not match.
* If the line exists, but is wrong, suggest the updated version. If they are missing 64-bit for iOS, warn them
* If the line does not exist, suggest what it should be.
Feon, is this something you or [~skypanther] could tackle?
I can give it a shot.
PR: https://github.com/appcelerator/titanium_mobile/pull/6433 Functional Test: 1. create a module
For iOS
1. cd into module iphone directory 2. comment outarchitectures: armeabi armeabi-v7a x86
inmanifest
3. run./build.py
4. build should fail with follow error5. edit architectures value in manifest, build again build should fail
6. undo all changes to manifest, module should be build successfully.
For Android
1. cd into module android directory 2. comment outarchitectures: armeabi armeabi-v7a x86
inmanifest
3. runant
4. build should fail with follow error5.edit architectures value in manifest, build should fail
6. undo all changes to manifest, module should be build successfully.
FR/CR passed. PR merged.
Reopen to backport to 3_5_X
3_5_X backport https://github.com/appcelerator/titanium_mobile/pull/6434
PR passed, but found a parity with iphone module build. If x86_64 arch is removed, then there is a warning in the build logs, but the build still succeed. However, if any arch is missing for android module, then the build has failed with appropriate warning. Created TIMOB-18145 for this.
Verified fixed using: Titanium SDK 3.5.0.v20141208122514 Studio 3.4.1.201410281743 Xcode 6.1.1
Getting this error in the log when building an iOS module even though the architectures being built are correct:
PR
master: https://github.com/appcelerator/titanium_mobile/pull/6482 3_5_X: https://github.com/appcelerator/titanium_mobile/pull/6485PRs merged 3_5_X - https://github.com/appcelerator/titanium_mobile/pull/6485
Verified using functional test by [~fmiao] for android & as expected build fails if compiled architectures do not match module manifest. Environment: Appc Studio : 3.4.1.201410281743 Ti SDK : 3.5.0.v20150106150919, 3.6.0.v20150106160923 CLI : 3.4.1 Alloy : 1.5.1 GA Code Processor : 1.1.1 MAC Yosemite : 10.10
Closing as fixed.
what time or which version do you publish it?
[~mdsb100] What do you mean?