読者です 読者をやめる 読者になる 読者になる

きょこみのーと

元六本木でGo書いてました。今はVRでGo書いてます。

Cocos2d-x3.0betaのcreate_project.pyで作ったProjectをdiffる

Cocos2d-x3.0betaと3.0alpha1のcreate_project.pyで作ったProjectの中身をdiffってみた。

とりあえずiOSAndroid以外興味ないので、関係ありそうなやつだけチョイス。

proj.android/AndroidManifest.xml

14c14
<         <activity android:name="org.cocos2dx.cpp.Cocos2dxActivity"
---
>         <activity android:name="android.app.NativeActivity"

デフォルトのActivityがCocos2dxActivityになったみたいです。

cocos2d-x 2.x.x系の時は、proj.androidプロジェクト内にありましたね。

パッケージ名にcppがあるってことはluaとかjsでそれぞれあるのか?あとで見ておこう。 (見てもわからんかもしれないが)

proj.android/build_native.py

めっちゃ変わってた!!

ざっと見た感じ色々パラメータ指定できるっぽい。 とりあえず実行引数に--helpが追加されたので叩いてみた。

$ ./SampleProject/proj.android/build_native.py --help
Usage: build_native.py [options]

Options:
  -h, --help            show this help message and exit
  -n NDK_BUILD_PARAM, --ndk=NDK_BUILD_PARAM
                        parameter for ndk-build
  -p ANDROID_PLATFORM, --platform=ANDROID_PLATFORM
                        parameter for android-update.Without the parameter,the
                        script just build dynamic library for project. Valid
                        android-platform are:[10|11|12|13|14|15|16|17|18|19]
  -b BUILD_MODE, --build=BUILD_MODE
                        the build mode for java project,debug[default] or
                        release.Get more information,please refer to
                        http://developer.android.com/tools/building/building-
                        cmdline.html

NDKのビルドパラメータと、android-updateの実行でsdk-versionを指定してant実行までやってくれるっぽい。

あと、debugとreleaseビルドも選べるみたい。

実行してみた。

$ ./SampleProject/proj.android/build_native.py -p 19 -b debug
The Selected NDK toolchain version was 4.8 !
ANDROID_SDK_ROOT not defined. Please define ANDROID_SDK_ROOT in your environment

環境変数忘れてたサーセンANDROID_SDK_HOMEならあったw

まあ、とりあえず追加しますね。

~/.bash_profile

# android SDK
ANDROID_SDK_HOME=/Applications/android-sdk-macosx
export ANDROID_SDK_HOME
ANDROID_SDK_ROOT=/Applications/android-sdk-macosx
export ANDROID_SDK_ROOT

気を取り直して、再度実行。

$ ./SampleProject/proj.android/build_native.py -p 19 -b debug
The Selected NDK toolchain version was 4.8 !
Android NDK: WARNING:/Applications/cocos2d-x/projects/SampleProject/proj.android/../cocos2d/cocos/2d/Android.mk:cocos2dx_static: LOCAL_LDLIBS is always ignored for static libraries
Android NDK: WARNING:/Applications/cocos2d-x/projects/SampleProject/proj.android/../cocos2d/cocos/2d/platform/android/Android.mk:cocos2dxandroid_static: LOCAL_LDLIBS is always ignored for static libraries
make: Entering directory `/Applications/cocos2d-x/projects/SampleProject/proj.android'
Install        : libcocos2dcpp.so => libs/armeabi/libcocos2dcpp.so
make: Leaving directory `/Applications/cocos2d-x/projects/SampleProject/proj.android'
Updated project.properties
Updated local.properties
Updated file /Applications/cocos2d-x/projects/SampleProject/proj.android/../cocos2d/cocos/2d/platform/android/java/proguard-project.txt
Updated project.properties
Updated local.properties
Updated file /Applications/cocos2d-x/projects/SampleProject/proj.android/proguard-project.txt
Buildfile: /Applications/cocos2d-x/projects/SampleProject/proj.android/build.xml

-check-env:
 [checkenv] Android SDK Tools Revision 22.3.0
 [checkenv] Installed at /Applications/android-sdk-macosx

-setup:
     [echo] Project Name: SampleProject
  [gettype] Project Type: Application

-pre-clean:

clean:
[getlibpath] Library dependencies:
[getlibpath]
[getlibpath] ------------------
[getlibpath] Ordered libraries:

nodeps:

-check-env:
 [checkenv] Android SDK Tools Revision 22.3.0
 [checkenv] Installed at /Applications/android-sdk-macosx

-setup:
     [echo] Project Name: cocos2dxandroid
  [gettype] Project Type: Android Library

-pre-clean:

clean:

-set-mode-check:

-set-debug-files:

-check-env:
 [checkenv] Android SDK Tools Revision 22.3.0
 [checkenv] Installed at /Applications/android-sdk-macosx

-setup:
     [echo] Project Name: SampleProject
  [gettype] Project Type: Application

-set-debug-mode:

-debug-obfuscation-check:

-pre-build:

-build-setup:
[getbuildtools] Using latest Build Tools: 19.0.1
     [echo] Resolving Build Target for SampleProject...
[gettarget] Project Target:   Android 4.4.2
[gettarget] API level:        19
     [echo] ----------
     [echo] Creating output directories if needed...
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/rsObj
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/rsLibs
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/gen
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/classes
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/dexedLibs
     [echo] ----------
     [echo] Resolving Dependencies for SampleProject...
[dependency] Ordered libraries:
[dependency] /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java
[dependency]
[dependency] ------------------
     [echo] ----------
     [echo] Building Libraries with 'debug'...

nodeps:

-set-mode-check:

-set-debug-files:

-check-env:
 [checkenv] Android SDK Tools Revision 22.3.0
 [checkenv] Installed at /Applications/android-sdk-macosx

-setup:
     [echo] Project Name: cocos2dxandroid
  [gettype] Project Type: Android Library

-set-debug-mode:

-debug-obfuscation-check:

-pre-build:

-build-setup:
[getbuildtools] Using latest Build Tools: 19.0.1
     [echo] Resolving Build Target for cocos2dxandroid...
[gettarget] Project Target:   Android 4.4.2
[gettarget] API level:        19
     [echo] ----------
     [echo] Creating output directories if needed...
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/libs
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/res
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/rsObj
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/rsLibs
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/gen
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/classes
    [mkdir] Created dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/dexedLibs
     [echo] ----------
     [echo] Resolving Dependencies for cocos2dxandroid...
[dependency] Library dependencies:
[dependency] No Libraries
[dependency]
[dependency] ------------------

-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
     [echo] Handling aidl files...
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
     [echo] ----------
     [echo] Handling Resources...
     [aapt] Generating resource IDs...
     [aapt]     (skipping file '.gitignore' due to ANDROID_AAPT_IGNORE pattern '.*')
     [echo] ----------
     [echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.

-pre-compile:

-compile:
    [javac] Compiling 10 source files to /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/classes
    [javac] 注意:/Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/src/org/cocos2dx/lib/Cocos2dxEditBoxDialog.javaは推奨されないAPIを使用またはオーバーライドしています。
    [javac] 注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
     [echo] Creating library output jar file...
      [jar] Building jar: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/classes.jar

-post-compile:

-obfuscate:

-dex:
     [echo] Library project: do not convert bytecode...

-crunch:
   [crunch] Crunching PNG Files in source dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/res
   [crunch] To
   [crunch] destination dir: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/res
   [crunch] Crunched 0 PNG files to update cache

-package-resources:
     [echo] Library project: do not package resources...

-package:
     [echo] Library project: do not package apk...

-post-package:

-do-debug:
     [echo] Library project: do not create apk...
[propertyfile] Creating new property file: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/build.prop
[propertyfile] Updating property file: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/build.prop
[propertyfile] Updating property file: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/build.prop
[propertyfile] Updating property file: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/build.prop

-post-build:

debug:

-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
     [echo] Handling aidl files...
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
     [echo] ----------
     [echo] Handling Resources...
     [aapt] Generating resource IDs...
     [aapt]     (skipping file '.gitignore' due to ANDROID_AAPT_IGNORE pattern '.*')
     [echo] ----------
     [echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.

-pre-compile:

-compile:
    [javac] Compiling 3 source files to /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/classes

-post-compile:

-obfuscate:

-dex:
      [dex] input: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/classes
      [dex] input: /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/classes.jar
      [dex] Pre-Dexing /Applications/cocos2d-x/projects/SampleProject/cocos2d/cocos/2d/platform/android/java/bin/classes.jar -> classes-1006f66a268b715844c8b8c720d81c4a.jar
      [dex] Converting compiled files and external libraries into /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/classes.dex...
       [dx] Merged dex A (6 defs/1.8KiB) with dex B (25 defs/42.8KiB). Result is 31 defs/51.6KiB. Took 0.1s

-crunch:
   [crunch] Crunching PNG Files in source dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/res
   [crunch] To destination dir: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res
   [crunch] Processing image to cache: /Applications/cocos2d-x/projects/SampleProject/proj.android/res/drawable-hdpi/icon.png => /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res/drawable-hdpi/icon.png
   [crunch]   (processed image to cache entry /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res/drawable-hdpi/icon.png: 67% size of source)
   [crunch] Processing image to cache: /Applications/cocos2d-x/projects/SampleProject/proj.android/res/drawable-ldpi/icon.png => /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res/drawable-ldpi/icon.png
   [crunch]   (processed image to cache entry /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res/drawable-ldpi/icon.png: 0% size of source)
   [crunch] Processing image to cache: /Applications/cocos2d-x/projects/SampleProject/proj.android/res/drawable-mdpi/icon.png => /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res/drawable-mdpi/icon.png
   [crunch]   (processed image to cache entry /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/res/drawable-mdpi/icon.png: 53% size of source)
   [crunch] Crunched 3 PNG files to update cache

-package-resources:
     [aapt] Creating full resource package...
     [aapt]     (skipping file '.gitignore' due to ANDROID_AAPT_IGNORE pattern '.*')

-package:
[apkbuilder] Current build type is different than previous build: forced apkbuilder run.
[apkbuilder] Creating SampleProject-debug-unaligned.apk and signing it with a debug key...

-post-package:

-do-debug:
 [zipalign] Running zip align on final apk...
     [echo] Debug Package: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/SampleProject-debug.apk
[propertyfile] Creating new property file: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/build.prop
[propertyfile] Updating property file: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/build.prop
[propertyfile] Updating property file: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/build.prop
[propertyfile] Updating property file: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/build.prop

-post-build:

debug:

BUILD SUCCESSFUL
Total time: 19 seconds

おお、無事完了!!(ソースいじってないので当たり前かw)

ちゃんとapkもできてるー

     [echo] Debug Package: /Applications/cocos2d-x/projects/SampleProject/proj.android/bin/SampleProject-debug.apk

すばらです。

他は、projects下にコピーされたcocos2dへパスが変わっただけっぽい。

以上〜

ちなみにdiffの結果も貼っておきます。

(少しだけ見やすいように加工してます)


$ diff -r SampleProject SampleProject_alpha1

diff -r SampleProject/CMakeLists.txt SampleProject_alpha1/CMakeLists.txt

3c3
< set(APP_NAME MyGame)
---
> set(APP_NAME HelloCpp)
6c6
< include(cocos2d/build/BuildHelpers.CMakeLists.txt)
---
> include(../../build/BuildHelpers.CMakeLists.txt)
48c48
< set(COCOS2D_ROOT ${CMAKE_SOURCE_DIR}/cocos2d)
---
> set(COCOS2D_ROOT ${CMAKE_SOURCE_DIR}/../..)
55d54
<   ${COCOS2D_ROOT}/cocos/2d/renderer
64d62
<   ${COCOS2D_ROOT}/external/edtaa3func
78a77
>   ${COCOS2D_ROOT}/lib
87,130d85
< # kazmath
< add_subdirectory(${COCOS2D_ROOT}/cocos/math/kazmath)
<
< # chipmunk library
< add_subdirectory(${COCOS2D_ROOT}/external/chipmunk/src)
<
< # box2d library
< add_subdirectory(${COCOS2D_ROOT}/external/Box2D)
<
< # unzip library
< add_subdirectory(${COCOS2D_ROOT}/external/unzip)
<
< # tinyxml2 library
< add_subdirectory(${COCOS2D_ROOT}/external/tinyxml2)
<
< # audio
< add_subdirectory(${COCOS2D_ROOT}/cocos/audio)
<
< # cocos base library
< add_subdirectory(${COCOS2D_ROOT}/cocos/base)
<
< # cocos 2d library
< add_subdirectory(${COCOS2D_ROOT}/cocos/2d)
<
< # gui
< add_subdirectory(${COCOS2D_ROOT}/cocos/gui)
<
< # network
< add_subdirectory(${COCOS2D_ROOT}/cocos/network)
<
< # extensions
< add_subdirectory(${COCOS2D_ROOT}/extensions)
<
< ## Editor Support
<
< # spine
< add_subdirectory(${COCOS2D_ROOT}/cocos/editor-support/spine)
<
< # cocosbuilder
< add_subdirectory(${COCOS2D_ROOT}/cocos/editor-support/cocosbuilder)
<
< # cocostudio
< add_subdirectory(${COCOS2D_ROOT}/cocos/editor-support/cocostudio)
<
144a100,104
>   curl
>   ldap
>   lber
>   idn
>   rtmp
146a107
>   jsoncpp
148a110
>   box2d
149a112
>   ${FMOD_LIB}
150a114,131
>   cocosbase
>   chipmunk
>   tinyxml2
>   kazmath
>   unzip
>   jpeg
>   webp
>   tiff
>   freetype
>   fontconfig
>   png
>   pthread
>   glfw
>   GLEW
>   GL
>   X11
>   rt
>   z
153c134
< set(APP_BIN_DIR "${CMAKE_BINARY_DIR}/bin")
---
> set(APP_BIN_DIR "${CMAKE_SOURCE_DIR}/bin")
Only in SampleProject: cocos2d
Only in SampleProject_alpha1/proj.android: .cproject

diff -r SampleProject/proj.android/.project SampleProject_alpha1/proj.android/.project

23a24,33
>            <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
>            <triggers>full,incremental,</triggers>
>            <arguments>
>                <dictionary>
>                    <key>LaunchConfigHandle</key>
>                    <value>&lt;project&gt;/.externalToolBuilders/org.eclipse.cdt.managedbuilder.core.genmakebuilder (1).launch</value>
>                </dictionary>
>            </arguments>
>        </buildCommand>
>        <buildCommand>

diff -r SampleProject/proj.android/AndroidManifest.xml SampleProject_alpha1/proj.android/AndroidManifest.xml

14c14
<         <activity android:name="org.cocos2dx.cpp.Cocos2dxActivity"
---
>         <activity android:name="android.app.NativeActivity"

diff -r SampleProject/proj.android/build_native.py SampleProject_alpha1/proj.android/build_native.py

9d8
< from optparse import OptionParser
11,21d9
< def check_environment_variables_sdk():
<     ''' Checking the environment ANDROID_SDK_ROOT, which will be used for building
<     '''
<
<     try:
<         SDK_ROOT = os.environ['ANDROID_SDK_ROOT']
<     except Exception:
<         print "ANDROID_SDK_ROOT not defined. Please define ANDROID_SDK_ROOT in your environment"
<         sys.exit(1)
<
<     return SDK_ROOT
54c42
< def do_build(cocos_root, ndk_root, app_android_root,ndk_build_param,sdk_root,android_platform,build_mode):
---
> def do_build(cocos_root, ndk_root, app_android_root):
65c53,54
<     if ndk_build_param == None:
---
>     ndk_build_param = sys.argv[1:]
>     if len(ndk_build_param) == 0:
69,82c58
<     if os.system(command) != 0:
<         raise Exception("Build dynamic library for project [ " + app_android_root + " ] fails!")
<     elif android_platform is not None:
<          sdk_tool_path = os.path.join(sdk_root, "tools/android")
<          cocoslib_path = os.path.join(cocos_root, "cocos/2d/platform/android/java")
<          command = '%s update lib-project -t %s -p %s' % (sdk_tool_path,android_platform,cocoslib_path)
<          if os.system(command) != 0:
<              raise Exception("update cocos lib-project [ " + cocoslib_path + " ] fails!")
<          command = '%s update project -t %s -p %s -s' % (sdk_tool_path,android_platform,app_android_root)
<          if os.system(command) != 0:
<              raise Exception("update project [ " + app_android_root + " ] fails!")
<          buildfile_path = os.path.join(app_android_root, "build.xml")
<          command = 'ant clean %s -f %s -Dsdk.dir=%s' % (build_mode,buildfile_path,sdk_root)
<          os.system(command)
---
>     os.system(command)
109c85
< def build(ndk_build_param,android_platform,build_mode):
---
> def build():
112d87
<     sdk_root = None
116c91
<     cocos_root = os.path.join(current_dir, "../cocos2d")
---
>     cocos_root = os.path.join(current_dir, "../../..")
120,134c95
<
<     if android_platform is not None:
<                sdk_root = check_environment_variables_sdk()
<                if android_platform.isdigit():
<                        android_platform = 'android-'+android_platform
<                else:
<                        print 'please use vaild android platform'
<                        exit(1)
<
<     if build_mode is None:
<          build_mode = 'debug'
<     elif build_mode != 'release':
<         build_mode = 'debug'
<
<     do_build(cocos_root, ndk_root, app_android_root,ndk_build_param,sdk_root,android_platform,build_mode)
---
>     do_build(cocos_root, ndk_root, app_android_root)
139,147c100
<     parser = OptionParser()
<     parser.add_option("-n", "--ndk", dest="ndk_build_param", help='parameter for ndk-build')
<     parser.add_option("-p", "--platform", dest="android_platform",
<     help='parameter for android-update.Without the parameter,the script just build dynamic library for project. Valid android-platform are:[10|11|12|13|14|15|16|17|18|19]')
<     parser.add_option("-b", "--build", dest="build_mode",
<     help='the build mode for java project,debug[default] or release.Get more information,please refer to http://developer.android.com/tools/building/building-cmdline.html')
<     (opts, args) = parser.parse_args()
<
<     build(opts.ndk_build_param,opts.android_platform,opts.build_mode)
---
>     build()

diff -r SampleProject/proj.android/project.properties SampleProject_alpha1/proj.android/project.properties

13c13
< android.library.reference.1=../cocos2d/cocos/2d/platform/android/java
---
> android.library.reference.1=../../../cocos/2d/platform/android/java
Only in SampleProject_alpha1/proj.android/src: nojava.txt
Only in SampleProject/proj.android/src: org

diff -r SampleProject/proj.ios_mac/SampleProject.xcodeproj/project.pbxproj SampleProject_alpha1/proj.ios_mac/SampleProject.xcodeproj/project.pbxproj

246c246
<        1AC6FAE5180E9839004C840B /* cocos2d_libs.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = cocos2d_libs.xcodeproj; path = ../cocos2d/build/cocos2d_libs.xcodeproj; sourceTree = "<group>"; };
---
>        1AC6FAE5180E9839004C840B /* cocos2d_libs.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = cocos2d_libs.xcodeproj; path = ../../../build/cocos2d_libs.xcodeproj; sourceTree = "<group>"; };
823,824c823,824
<                    "$(SRCROOT)/../cocos2d/cocos/2d/platform/ios",
<                    "$(SRCROOT)/../cocos2d/cocos/2d/platform/ios/Simulation",
---
>                    "$(SRCROOT)/../../../cocos/2d/platform/ios",
>                    "$(SRCROOT)/../../../cocos/2d/platform/ios/Simulation",
852,853c852,853
<                    "$(SRCROOT)/../cocos2d/cocos/2d/platform/ios",
<                    "$(SRCROOT)/../cocos2d/cocos/2d/platform/ios/Simulation",
---
>                    "$(SRCROOT)/../../../cocos/2d/platform/ios",
>                    "$(SRCROOT)/../../../cocos/2d/platform/ios/Simulation",
884,885c884,885
<                    "$(SRCROOT)/../cocos2d/cocos/2d/platform/mac",
<                    "$(SRCROOT)/../cocos2d/external/glfw3/include/mac",
---
>                    "$(SRCROOT)/../../../cocos/2d/platform/mac",
>                    "$(SRCROOT)/../../../external/glfw3/include/mac",
911,912c911,912
<                    "$(SRCROOT)/../cocos2d/cocos/2d/platform/mac",
<                    "$(SRCROOT)/../cocos2d/external/glfw3/include/mac",
---
>                    "$(SRCROOT)/../../../cocos/2d/platform/mac",
>                    "$(SRCROOT)/../../../external/glfw3/include/mac",
930,942c930,942
<                    "$(SRCROOT)/../cocos2d",
<                    "$(SRCROOT)/../cocos2d/cocos",
<                    "$(SRCROOT)/../cocos2d/cocos/base",
<                    "$(SRCROOT)/../cocos2d/cocos/physics",
<                    "$(SRCROOT)/../cocos2d/cocos/math/kazmath/include",
<                    "$(SRCROOT)/../cocos2d/cocos/2d",
<                    "$(SRCROOT)/../cocos2d/cocos/gui",
<                    "$(SRCROOT)/../cocos2d/cocos/network",
<                    "$(SRCROOT)/../cocos2d/cocos/audio/include",
<                    "$(SRCROOT)/../cocos2d/cocos/editor-support",
<                    "$(SRCROOT)/../cocos2d/extensions",
<                    "$(SRCROOT)/../cocos2d/external",
<                    "$(SRCROOT)/../cocos2d/external/chipmunk/include/chipmunk",
---
>                    "$(SRCROOT)/../../..",
>                    "$(SRCROOT)/../../../cocos",
>                    "$(SRCROOT)/../../../cocos/base",
>                    "$(SRCROOT)/../../../cocos/physics",
>                    "$(SRCROOT)/../../../cocos/math/kazmath/include",
>                    "$(SRCROOT)/../../../cocos/2d",
>                    "$(SRCROOT)/../../../cocos/gui",
>                    "$(SRCROOT)/../../../cocos/network",
>                    "$(SRCROOT)/../../../cocos/audio/include",
>                    "$(SRCROOT)/../../../cocos/editor-support",
>                    "$(SRCROOT)/../../../extensions",
>                    "$(SRCROOT)/../../../external",
>                    "$(SRCROOT)/../../../external/chipmunk/include/chipmunk",
958,970c958,970
<                    "$(SRCROOT)/../cocos2d",
<                    "$(SRCROOT)/../cocos2d/cocos",
<                    "$(SRCROOT)/../cocos2d/cocos/base",
<                    "$(SRCROOT)/../cocos2d/cocos/physics",
<                    "$(SRCROOT)/../cocos2d/cocos/math/kazmath/include",
<                    "$(SRCROOT)/../cocos2d/cocos/2d",
<                    "$(SRCROOT)/../cocos2d/cocos/gui",
<                    "$(SRCROOT)/../cocos2d/cocos/network",
<                    "$(SRCROOT)/../cocos2d/cocos/audio/include",
<                    "$(SRCROOT)/../cocos2d/cocos/editor-support",
<                    "$(SRCROOT)/../cocos2d/extensions",
<                    "$(SRCROOT)/../cocos2d/external",
<                    "$(SRCROOT)/../cocos2d/external/chipmunk/include/chipmunk",
---
>                    "$(SRCROOT)/../../..",
>                    "$(SRCROOT)/../../../cocos",
>                    "$(SRCROOT)/../../../cocos/base",
>                    "$(SRCROOT)/../../../cocos/physics",
>                    "$(SRCROOT)/../../../cocos/math/kazmath/include",
>                    "$(SRCROOT)/../../../cocos/2d",
>                    "$(SRCROOT)/../../../cocos/gui",
>                    "$(SRCROOT)/../../../cocos/network",
>                    "$(SRCROOT)/../../../cocos/audio/include",
>                    "$(SRCROOT)/../../../cocos/editor-support",
>                    "$(SRCROOT)/../../../extensions",
>                    "$(SRCROOT)/../../../external",
>                    "$(SRCROOT)/../../../external/chipmunk/include/chipmunk",
Only in SampleProject_alpha1/proj.linux: .cproject
Only in SampleProject_alpha1/proj.linux: .project
Only in SampleProject_alpha1/proj.linux: Makefile

diff -r SampleProject/proj.linux/build.sh SampleProject_alpha1/proj.linux/build.sh

3,4c3,5
< # Exit on error
< set -e
---
> TXTCOLOR_DEFAULT="\033[0;m"
> TXTCOLOR_RED="\033[0;31m"
> TXTCOLOR_GREEN="\033[0;32m"
6,7c7,9
< rm -rf ../bin
< DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
---
> COCOS2DX20_TRUNK=`pwd`/../../..
> OUTPUT_DEBUG=$COCOS2DX20_TRUNK/lib/linux/debug/
> OUTPUT_RELEASE=$COCOS2DX20_TRUNK/lib/linux/release/
9,26c11,59
< #make global libs
< cd ../cocos2d
< #install depend libs
< sudo ./build/install-deps-linux.sh
< mkdir -p linux-build
< cd linux-build
< cmake .. -DBUILD_LIBS_LUA=OFF -DBUILD_HelloCpp=OFF -DBUILD_TestCpp=OFF -DBUILD_HelloLua=OFF -DBUILD_TestLua=OFF
< make -j4
<
< #make bin
< cd $DIR
< rm -rf bin
< mkdir -p build
< cd build
< cmake  ../..
< make -j4
< cd ..
< mv ../bin bin
---
> check_make_result()
> {
>    if [ 0 != $? ]; then
>        exit 1
>        fi
> }
>
> DEPENDS='libx11-dev'
> DEPENDS+=' libxmu-dev'
> DEPENDS+=' libglu1-mesa-dev'
> DEPENDS+=' libgl2ps-dev'
> DEPENDS+=' libxi-dev'
> DEPENDS+=' libglfw-dev'
> DEPENDS+=' g++'
> DEPENDS+=' libzip-dev'
> DEPENDS+=' libcurl4-gnutls-dev'
> DEPENDS+=' libfontconfig1-dev'
> DEPENDS+=' libsqlite3-dev'
> DEPENDS+=' libglew-dev'
>
> for i in $DEPENDS; do
>    PKG_OK=$(dpkg-query -W --showformat='${Status}\n' $i | grep "install ok installed")
>    echo Checking for $i: $PKG_OK
>    if [ "" == "$PKG_OK" ]; then
>      echo -e $TXTCOLOR_GREEN"No $i. Setting up $i, please enter your password:"$TXTCOLOR_DEFAULT
>      sudo apt-get --force-yes --yes install $i
>    fi
> done
>
> mkdir -p $OUTPUT_DEBUG
> mkdir -p $OUTPUT_RELEASE
>
> make -C $COCOS2DX20_TRUNK/external/Box2D/proj.linux DEBUG=1
> check_make_result
>
> make -C $COCOS2DX20_TRUNK/external/chipmunk/proj.linux DEBUG=1
> check_make_result
>
> make -C $COCOS2DX20_TRUNK/cocos2dx/proj.linux DEBUG=1
> check_make_result
>
> make -C $COCOS2DX20_TRUNK/CocosDenshion/proj.linux DEBUG=1
> check_make_result
>
> make -C $COCOS2DX20_TRUNK/extensions/proj.linux DEBUG=1
> check_make_result
>
> make DEBUG=1
> check_make_result

diff -r SampleProject/proj.linux/main.cpp SampleProject_alpha1/proj.linux/main.cpp

17c17
<     eglView.init("Cocos2d-x Game",900,640);
---
>     eglView.init("TestCPP",900,640);

diff -r SampleProject/proj.win32/SampleProject.sln SampleProject_alpha1/proj.win32/SampleProject.sln

11c11
< Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcocos2d", "..\cocos2d\cocos\2d\cocos2d.vcxproj", "{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}"
---
> Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcocos2d", "..\..\..\cocos\2d\cocos2d.vcxproj", "{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}"
13c13
< Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libchipmunk", "..\cocos2d\external\chipmunk\proj.win32\chipmunk.vcxproj", "{207BC7A9-CCF1-4F2F-A04D-45F72242AE25}"
---
> Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libchipmunk", "..\..\..\external\chipmunk\proj.win32\chipmunk.vcxproj", "{207BC7A9-CCF1-4F2F-A04D-45F72242AE25}"
15c15
< Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libAudio", "..\cocos2d\cocos\audio\proj.win32\CocosDenshion.vcxproj", "{F8EDD7FA-9A51-4E80-BAEB-860825D2EAC6}"
---
> Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libAudio", "..\..\..\cocos\audio\proj.win32\CocosDenshion.vcxproj", "{F8EDD7FA-9A51-4E80-BAEB-860825D2EAC6}"

diff -r SampleProject/proj.win32/SampleProject.vcxproj SampleProject_alpha1/proj.win32/SampleProject.vcxproj

39,40c39,40
<     <Import Project="..\cocos2d\cocos\2d\cocos2dx.props" />
<     <Import Project="..\cocos2d\cocos\2d\cocos2d_headers.props" />
---
>     <Import Project="..\..\..\cocos\2d\cocos2dx.props" />
>     <Import Project="..\..\..\cocos\2d\cocos2d_headers.props" />
44,45c44,45
<     <Import Project="..\cocos2d\cocos\2d\cocos2dx.props" />
<     <Import Project="..\cocos2d\cocos\2d\cocos2d_headers.props" />
---
>     <Import Project="..\..\..\cocos\2d\cocos2dx.props" />
>     <Import Project="..\..\..\cocos\2d\cocos2d_headers.props" />
146c146
<     <ProjectReference Include="..\cocos2d\cocos\2d\cocos2d.vcxproj">
---
>     <ProjectReference Include="..\..\..\cocos\2d\cocos2d.vcxproj">
150c150
<     <ProjectReference Include="..\cocos2d\cocos\audio\proj.win32\CocosDenshion.vcxproj">
---
>     <ProjectReference Include="..\..\..\cocos\audio\proj.win32\CocosDenshion.vcxproj">
153c153
<     <ProjectReference Include="..\cocos2d\external\chipmunk\proj.win32\chipmunk.vcxproj">
---
>     <ProjectReference Include="..\..\..\external\chipmunk\proj.win32\chipmunk.vcxproj">