From 57e5bab4efb2e9157cbdcf59941a4c35032785c3 Mon Sep 17 00:00:00 2001 From: Arnold <397136899@qq.com> Date: Fri, 10 May 2019 15:32:08 +0800 Subject: [PATCH 1/8] fix get environment --- .gitignore | 7 +++++++ .../runtime-src/proj.android/app/get_environment.sh | 11 +++++++++-- .../project/proj.android/app/build.gradle | 10 +++++++++- .../project/proj.android/app/get_environment.sh | 11 +++++++++-- .../gradle/wrapper/gradle-wrapper.properties | 4 ++-- 5 files changed, 36 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 306aa9ecb1c2..42e4d5535e60 100644 --- a/.gitignore +++ b/.gitignore @@ -175,3 +175,10 @@ metal-support*.zip **/org.eclipse.buildship.core.prefs desktop.ini +# tmp folder for temp usage +tmp/ +temp/ + +# external libs zip +*.zip +**/simulator/ diff --git a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/get_environment.sh b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/get_environment.sh index 102f7247e70a..61ce03524ccb 100755 --- a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/get_environment.sh +++ b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/get_environment.sh @@ -1,4 +1,11 @@ #!/bin/bash -source ~/.bash_profile -echo $COCOS_CONSOLE_ROOT \ No newline at end of file +if [ -f $HOME/.bashrc ]; then + source $HOME/.bashrc +fi + +if [ -f $HOME/.bash_profile ]; then + source $HOME/.bash_profile +fi + +echo $COCOS_CONSOLE_ROOT diff --git a/tests/lua-empty-test/project/proj.android/app/build.gradle b/tests/lua-empty-test/project/proj.android/app/build.gradle index 745f55c0f2b0..6860691bb919 100644 --- a/tests/lua-empty-test/project/proj.android/app/build.gradle +++ b/tests/lua-empty-test/project/proj.android/app/build.gradle @@ -76,11 +76,19 @@ def getCocosCommandPath() { return 'cocos.bat' } else { + + def env_console_path = System.getenv("COCOS_CONSOLE_ROOT") + + if (env_console_path != null && !env_console_path.trim().isEmpty()) { + return new File(env_console_path.trim() + '/cocos').absolutePath + } + // on unix like system, can not get environments variables easily // so run a shell script to get environment variable sets by cocos2d-x setup.py new ByteArrayOutputStream().withStream { os -> def result = exec { - executable = project.file('get_environment.sh') + executable = "/bin/bash" + args = [ "-i", project.file('get_environment.sh')] standardOutput = os } ext.console_path = os.toString().trim() diff --git a/tests/lua-empty-test/project/proj.android/app/get_environment.sh b/tests/lua-empty-test/project/proj.android/app/get_environment.sh index 102f7247e70a..61ce03524ccb 100755 --- a/tests/lua-empty-test/project/proj.android/app/get_environment.sh +++ b/tests/lua-empty-test/project/proj.android/app/get_environment.sh @@ -1,4 +1,11 @@ #!/bin/bash -source ~/.bash_profile -echo $COCOS_CONSOLE_ROOT \ No newline at end of file +if [ -f $HOME/.bashrc ]; then + source $HOME/.bashrc +fi + +if [ -f $HOME/.bash_profile ]; then + source $HOME/.bash_profile +fi + +echo $COCOS_CONSOLE_ROOT diff --git a/tests/lua-empty-test/project/proj.android/gradle/wrapper/gradle-wrapper.properties b/tests/lua-empty-test/project/proj.android/gradle/wrapper/gradle-wrapper.properties index ab7338f669d1..2701085c469c 100644 --- a/tests/lua-empty-test/project/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/tests/lua-empty-test/project/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Tue Mar 14 17:47:54 CST 2017 +#Fri May 10 15:15:29 CST 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip From c0d71a1f104087d4126d483f1d144b28570b37a8 Mon Sep 17 00:00:00 2001 From: Arnold <397136899@qq.com> Date: Fri, 17 May 2019 15:20:54 +0800 Subject: [PATCH 2/8] update gradle.scripts --- .../proj.android/app/build.gradle | 12 +++- .../runtime-src/proj.android/app/build.gradle | 23 +++++-- .../proj.android/app/build.gradle | 15 +++-- tests/cpp-tests/proj.android/app/build.gradle | 15 +++-- .../project/proj.android/app/build.gradle | 47 ++++++++------- .../project/proj.android/app/build.gradle | 60 +++++++++++-------- .../proj.android/app/build.gradle | 14 +++-- 7 files changed, 115 insertions(+), 71 deletions(-) diff --git a/templates/cpp-template-default/proj.android/app/build.gradle b/templates/cpp-template-default/proj.android/app/build.gradle index c946a52cc2e3..d2a8f3d8d08e 100644 --- a/templates/cpp-template-default/proj.android/app/build.gradle +++ b/templates/cpp-template-default/proj.android/app/build.gradle @@ -73,16 +73,22 @@ android { } android.applicationVariants.all { variant -> - // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" + def project_root_folder = "${projectDir}/../.." + def dest_assets_folder = "${projectDir}/assets" - variant.mergeAssets.doLast { + // delete previous files first + delete dest_assets_folder + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" + + tasks.register(copyTaskName) { copy { from "${buildDir}/../../../Resources" into "${buildDir}/intermediates/assets/${variant.dirName}" exclude "**/*.gz" } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { diff --git a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle index e50c3e2b8d00..9a5f6733aab8 100644 --- a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle +++ b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle @@ -76,11 +76,19 @@ def getCocosCommandPath() { return 'cocos.bat' } else { + + def env_console_path = System.getenv("COCOS_CONSOLE_ROOT") + + if (env_console_path != null && !env_console_path.trim().isEmpty()) { + return new File(env_console_path.trim() + '/cocos').absolutePath + } + // on unix like system, can not get environments variables easily // so run a shell script to get environment variable sets by cocos2d-x setup.py new ByteArrayOutputStream().withStream { os -> def result = exec { - executable = project.file('get_environment.sh') + executable = "/bin/bash" + args = [ "-i", project.file('get_environment.sh')] standardOutput = os } ext.console_path = os.toString().trim() @@ -122,10 +130,16 @@ def compileLua(srcDir, dstDir, doCompile, is64bit, doEncrypt) { } android.applicationVariants.all { variant -> + def project_root_folder = "${projectDir}/../../../.." + def dest_assets_folder = "${projectDir}/assets" + // delete previous files first delete "${buildDir}/intermediates/assets/${variant.dirName}" - variant.mergeAssets.doLast { + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" + + tasks.register(copyTaskName) { copy { from "${buildDir}/../../../../../res" into "${buildDir}/intermediates/assets/${variant.dirName}/res" @@ -137,8 +151,8 @@ android.applicationVariants.all { variant -> } // copy { - // from "${buildDir}/../../../../cocos2d-x/cocos/scripting/lua-bindings/script" - // into "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos" + // from "${projectDir}/../../../cocos2d-x/cocos/scripting/lua-bindings/script" + // into dest_assets_folder + "/src/cocos" // } // compile & encrypt the scripts if necessary @@ -213,6 +227,7 @@ android.applicationVariants.all { variant -> } } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { diff --git a/tests/cpp-empty-test/proj.android/app/build.gradle b/tests/cpp-empty-test/proj.android/app/build.gradle index 78c1ecf88167..2f154c20cee9 100644 --- a/tests/cpp-empty-test/proj.android/app/build.gradle +++ b/tests/cpp-empty-test/proj.android/app/build.gradle @@ -31,7 +31,7 @@ android { java.srcDir "src" res.srcDir "res" manifest.srcFile "AndroidManifest.xml" - assets.srcDir "../../Resources" + assets.srcDir "assets" } externalNativeBuild { @@ -74,16 +74,19 @@ android { } android.applicationVariants.all { variant -> - // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" - variant.mergeAssets.doLast { + delete "${projectDir}/assets" + + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" + tasks.register(copyTaskName) { copy { - from "${buildDir}/../../../Resources" - into "${buildDir}/intermediates/assets/${variant.dirName}" + from "${projectDir}/../../Resources" + into "${projectDir}/assets" exclude "**/*.gz" } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { diff --git a/tests/cpp-tests/proj.android/app/build.gradle b/tests/cpp-tests/proj.android/app/build.gradle index d5e797f8bf6e..a80541d94675 100644 --- a/tests/cpp-tests/proj.android/app/build.gradle +++ b/tests/cpp-tests/proj.android/app/build.gradle @@ -30,6 +30,7 @@ android { java.srcDir "src" res.srcDir "res" manifest.srcFile "AndroidManifest.xml" + assets.srcDir "assets" } externalNativeBuild { @@ -72,16 +73,18 @@ android { } android.applicationVariants.all { variant -> - // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" - variant.mergeAssets.doLast { + delete "${projectDir}/assets" + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" + tasks.register(copyTaskName) { copy { - from "${buildDir}/../../../Resources" - into "${buildDir}/intermediates/assets/${variant.dirName}" - exclude "**/*.gz" + from "${projectDir}/../../Resources" + into "${projectDir}/assets" + exclude "**/*.gz" } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { diff --git a/tests/lua-empty-test/project/proj.android/app/build.gradle b/tests/lua-empty-test/project/proj.android/app/build.gradle index 6860691bb919..0e221e5b4198 100644 --- a/tests/lua-empty-test/project/proj.android/app/build.gradle +++ b/tests/lua-empty-test/project/proj.android/app/build.gradle @@ -30,6 +30,7 @@ android { java.srcDir "src" res.srcDir "res" manifest.srcFile "AndroidManifest.xml" + assets.srcDir "assets" } externalNativeBuild { @@ -130,23 +131,24 @@ def compileLua(srcDir, dstDir, doCompile, is64bit, doEncrypt) { } android.applicationVariants.all { variant -> - // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" - - variant.mergeAssets.doLast { + delete "${projectDir}/assets" + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" + + tasks.register(copyTaskName) { copy { - from "${buildDir}/../../../../res" - into "${buildDir}/intermediates/assets/${variant.dirName}/res" + from "${projectDir}/../../../res" + into "${projectDir}/assets/res" } copy { - from "${buildDir}/../../../../src" - into "${buildDir}/intermediates/assets/${variant.dirName}/src" + from "${projectDir}/../../../src" + into "${projectDir}/assets/src" } copy { - from "${buildDir}/../../../../../../cocos/scripting/lua-bindings/script" - into "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos" + from "${projectDir}/../../../../../cocos/scripting/lua-bindings/script" + into "${projectDir}/assets/src/cocos" } // compile & encrypt the scripts if necessary @@ -190,37 +192,38 @@ android.applicationVariants.all { variant -> // invoke cocos command to compile & encrypt the lua files switch (buildType) { case -1: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src", false, false, encryptLua) break case 0: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src", true, false, encryptLua) break case 1: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src/64bit", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src/64bit", true, true, encryptLua) // remove the lua files in src dir - delete fileTree("${buildDir}/intermediates/assets/${variant.dirName}/src") { + delete fileTree("${projectDir}/assets/src") { include '**/*.lua' } - delete "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos" + delete "${projectDir}/assets/src/cocos" break case 2: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src/64bit", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src/64bit", true, true, encryptLua) - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src", true, false, encryptLua) break } } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { diff --git a/tests/lua-tests/project/proj.android/app/build.gradle b/tests/lua-tests/project/proj.android/app/build.gradle index aac177ffa981..d4fe842118a3 100644 --- a/tests/lua-tests/project/proj.android/app/build.gradle +++ b/tests/lua-tests/project/proj.android/app/build.gradle @@ -30,6 +30,7 @@ android { java.srcDir "src" res.srcDir "res" manifest.srcFile "AndroidManifest.xml" + assets.srcDir "assets" } externalNativeBuild { @@ -76,11 +77,19 @@ def getCocosCommandPath() { return 'cocos.bat' } else { + + def env_console_path = System.getenv("COCOS_CONSOLE_ROOT") + + if (env_console_path != null && !env_console_path.trim().isEmpty()) { + return new File(env_console_path.trim() + '/cocos').absolutePath + } + // on unix like system, can not get environments variables easily // so run a shell script to get environment variable sets by cocos2d-x setup.py new ByteArrayOutputStream().withStream { os -> def result = exec { - executable = project.file('get_environment.sh') + executable = "/bin/bash" + args = [ "-i", project.file('get_environment.sh')] standardOutput = os } ext.console_path = os.toString().trim() @@ -122,30 +131,32 @@ def compileLua(srcDir, dstDir, doCompile, is64bit, doEncrypt) { } android.applicationVariants.all { variant -> - // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" - variant.mergeAssets.doLast { + delete "${projectDir}/assets" + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" + + tasks.register(copyTaskName) { copy { - from "${buildDir}/../../../../res" - into "${buildDir}/intermediates/assets/${variant.dirName}/res" + from "${projectDir}/../../../res" + into "${projectDir}/assets/res" } copy { - from("${buildDir}/../../../../../cpp-tests/Resources") { + from("${projectDir}/../../../../cpp-tests/Resources") { exclude "**/*.gz" } - into "${buildDir}/intermediates/assets/${variant.dirName}/res" + into "${projectDir}/assets/res" } copy { - from "${buildDir}/../../../../src" - into "${buildDir}/intermediates/assets/${variant.dirName}/src" + from "${projectDir}/../../../src" + into "${projectDir}/assets/src" } copy { - from "${buildDir}/../../../../../../cocos/scripting/lua-bindings/script" - into "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos" + from "${projectDir}/../../../../../cocos/scripting/lua-bindings/script" + into "${projectDir}/assets/src/cocos" } // compile & encrypt the scripts if necessary @@ -189,37 +200,38 @@ android.applicationVariants.all { variant -> // invoke cocos command to compile & encrypt the lua files switch (buildType) { case -1: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src", false, false, encryptLua) break case 0: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src", true, false, encryptLua) break case 1: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src/64bit", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src/64bit", true, true, encryptLua) // remove the lua files in src dir - delete fileTree("${buildDir}/intermediates/assets/${variant.dirName}/src") { + delete fileTree("${projectDir}/assets/src") { include '**/*.lua' } - delete "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos" + delete "${projectDir}/assets/src/cocos" break case 2: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src/64bit", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src/64bit", true, true, encryptLua) - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua("${projectDir}/assets/src", + "${projectDir}/assets/src", true, false, encryptLua) break } } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { diff --git a/tests/performance-tests/proj.android/app/build.gradle b/tests/performance-tests/proj.android/app/build.gradle index 28481c7edc2c..da0ba0283016 100644 --- a/tests/performance-tests/proj.android/app/build.gradle +++ b/tests/performance-tests/proj.android/app/build.gradle @@ -26,7 +26,7 @@ android { java.srcDir "src" res.srcDir "res" manifest.srcFile "AndroidManifest.xml" - assets.srcDir "../../Resources" + assets.srcDir "assets" } externalNativeBuild { @@ -82,16 +82,18 @@ android { } android.applicationVariants.all { variant -> - // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" + delete "${projectDir}/assets" + def targetName = variant.name.capitalize() + def copyTaskName = "copy${targetName}ResourcesToAssets" - variant.mergeAssets.doLast { + tasks.register(copyTaskName) { copy { - from "${buildDir}/../../../Resources" - into "${buildDir}/intermediates/assets/${variant.dirName}" + from "${projectDir}/../../Resources" + into "${projectDir}/assets" exclude "**/*.gz" } } + tasks.getByName("pre${targetName}Build").dependsOn copyTaskName } dependencies { From 6c11da1699eaf4863ad2f019d2df764b563027e4 Mon Sep 17 00:00:00 2001 From: Arnold <397136899@qq.com> Date: Fri, 17 May 2019 15:59:33 +0800 Subject: [PATCH 3/8] fix error From fda1e19c2afbefc18082b2cb87d4fba26c0d38c7 Mon Sep 17 00:00:00 2001 From: Arnold <397136899@qq.com> Date: Fri, 17 May 2019 16:05:47 +0800 Subject: [PATCH 4/8] remove extract modifications From fbff8902cc119958b5cacb2c094fdbd02739c818 Mon Sep 17 00:00:00 2001 From: patricejiang Date: Mon, 22 Jul 2019 18:11:48 +0800 Subject: [PATCH 5/8] update --- .../auto/lua_cocos2dx_backend_auto.cpp | 9 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../runtime-src/proj.android/app/build.gradle | 83 ++++++++++++++----- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- 8 files changed, 70 insertions(+), 34 deletions(-) diff --git a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp index 028499ef770a..be79d89194d7 100644 --- a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp +++ b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp @@ -1998,24 +1998,21 @@ int lua_cocos2dx_backend_VertexLayout_setLayout(lua_State* tolua_S) #endif argc = lua_gettop(tolua_S)-1; - if (argc == 2) + if (argc == 1) { unsigned int arg0; - cocos2d::backend::VertexStepMode arg1; ok &= luaval_to_uint32(tolua_S, 2,&arg0, "ccb.VertexLayout:setLayout"); - - ok &= luaval_to_int32(tolua_S, 3,(int *)&arg1, "ccb.VertexLayout:setLayout"); if(!ok) { tolua_error(tolua_S,"invalid arguments in function 'lua_cocos2dx_backend_VertexLayout_setLayout'", nullptr); return 0; } - cobj->setLayout(arg0, arg1); + cobj->setLayout(arg0); lua_settop(tolua_S, 1); return 1; } - luaL_error(tolua_S, "%s has wrong number of arguments: %d, was expecting %d \n", "ccb.VertexLayout:setLayout",argc, 2); + luaL_error(tolua_S, "%s has wrong number of arguments: %d, was expecting %d \n", "ccb.VertexLayout:setLayout",argc, 1); return 0; #if COCOS2D_DEBUG >= 1 diff --git a/templates/cpp-template-default/proj.android/gradle/wrapper/gradle-wrapper.properties b/templates/cpp-template-default/proj.android/gradle/wrapper/gradle-wrapper.properties index fa27d140c9ad..8e341b7af5a7 100644 --- a/templates/cpp-template-default/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/templates/cpp-template-default/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle index 9a5f6733aab8..4e5f0dc20afe 100644 --- a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle +++ b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle @@ -13,9 +13,29 @@ android { versionName "1.0" externalNativeBuild { - cmake { - arguments "-DCMAKE_FIND_ROOT_PATH=", "-DANDROID_STL=c++_static", "-DANDROID_TOOLCHAIN=clang", "-DANDROID_ARM_NEON=TRUE" - cppFlags "-frtti -fexceptions -fsigned-char" + if (PROP_BUILD_TYPE == 'ndk-build') { + ndkBuild { + targets 'cocos2dlua' + arguments 'NDK_TOOLCHAIN_VERSION=clang' + arguments '-j' + Runtime.runtime.availableProcessors() + + def module_paths = [project.file("../../../cocos2d-x").absolutePath, + project.file("../../../cocos2d-x/cocos").absolutePath, + project.file("../../../cocos2d-x/external").absolutePath] + if (OperatingSystem.current().isWindows()) { + module_paths = module_paths.collect {it.replaceAll('\\\\', '/')} + arguments 'NDK_MODULE_PATH=' + module_paths.join(";") + } + else { + arguments 'NDK_MODULE_PATH=' + module_paths.join(':') + } + } + } + else if (PROP_BUILD_TYPE == 'cmake') { + cmake { + arguments "-DCMAKE_FIND_ROOT_PATH=", "-DANDROID_STL=c++_static", "-DANDROID_TOOLCHAIN=clang", "-DANDROID_ARM_NEON=TRUE" + cppFlags "-frtti -fexceptions -fsigned-char" + } } } @@ -30,11 +50,19 @@ android { res.srcDir "res" jniLibs.srcDir "libs" manifest.srcFile "AndroidManifest.xml" + assets.srcDir "assets" } externalNativeBuild { - cmake { - path "../../../../CMakeLists.txt" + if (PROP_BUILD_TYPE == 'ndk-build') { + ndkBuild { + path "jni/Android.mk" + } + } + else if (PROP_BUILD_TYPE == 'cmake') { + cmake { + path "../../../../CMakeLists.txt" + } } } @@ -61,12 +89,23 @@ android { if (project.hasProperty("RELEASE_STORE_FILE")) { signingConfig signingConfigs.release } + + externalNativeBuild { + ndkBuild { + arguments 'NDK_DEBUG=0' + } + } } debug { debuggable true jniDebuggable true renderscriptDebuggable true + externalNativeBuild { + ndkBuild { + arguments 'NDK_DEBUG=1' + } + } } } } @@ -134,20 +173,20 @@ android.applicationVariants.all { variant -> def dest_assets_folder = "${projectDir}/assets" // delete previous files first - delete "${buildDir}/intermediates/assets/${variant.dirName}" + delete dest_assets_folder def targetName = variant.name.capitalize() def copyTaskName = "copy${targetName}ResourcesToAssets" tasks.register(copyTaskName) { copy { - from "${buildDir}/../../../../../res" - into "${buildDir}/intermediates/assets/${variant.dirName}/res" + from project_root_folder + "/res" + into dest_assets_folder + "/res" } copy { - from "${buildDir}/../../../../../src" - into "${buildDir}/intermediates/assets/${variant.dirName}/src" + from project_root_folder + "/src" + into dest_assets_folder + "/src" } // copy { @@ -196,32 +235,32 @@ android.applicationVariants.all { variant -> // invoke cocos command to compile & encrypt the lua files switch (buildType) { case -1: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua(dest_assets_folder + "/src", + dest_assets_folder + "/src", false, false, encryptLua) break case 0: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua(dest_assets_folder + "/src", + dest_assets_folder + "/src", true, false, encryptLua) break case 1: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src/64bit", + compileLua(dest_assets_folder + "/src", + dest_assets_folder + "/src/64bit", true, true, encryptLua) // remove the lua files in src dir - delete fileTree("${buildDir}/intermediates/assets/${variant.dirName}/src") { + delete fileTree(dest_assets_folder + "/src") { include '**/*.lua' } - delete "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos" + delete dest_assets_folder + "/src/cocos" break case 2: - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src/64bit", + compileLua(dest_assets_folder + "/src", + dest_assets_folder + "/src/64bit", true, true, encryptLua) - compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src", - "${buildDir}/intermediates/assets/${variant.dirName}/src", + compileLua(dest_assets_folder + "/src", + dest_assets_folder + "/src", true, false, encryptLua) break } diff --git a/templates/lua-template-default/frameworks/runtime-src/proj.android/gradle/wrapper/gradle-wrapper.properties b/templates/lua-template-default/frameworks/runtime-src/proj.android/gradle/wrapper/gradle-wrapper.properties index fa27d140c9ad..8e341b7af5a7 100644 --- a/templates/lua-template-default/frameworks/runtime-src/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/templates/lua-template-default/frameworks/runtime-src/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/tests/cpp-empty-test/proj.android/gradle/wrapper/gradle-wrapper.properties b/tests/cpp-empty-test/proj.android/gradle/wrapper/gradle-wrapper.properties index e735da610145..70ce2c656eb3 100644 --- a/tests/cpp-empty-test/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/tests/cpp-empty-test/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip \ No newline at end of file diff --git a/tests/cpp-tests/proj.android/gradle/wrapper/gradle-wrapper.properties b/tests/cpp-tests/proj.android/gradle/wrapper/gradle-wrapper.properties index 6d0176c62e52..e743e60d3ae3 100644 --- a/tests/cpp-tests/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/tests/cpp-tests/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/tests/lua-tests/project/proj.android/gradle/wrapper/gradle-wrapper.properties b/tests/lua-tests/project/proj.android/gradle/wrapper/gradle-wrapper.properties index 362b38e5efc7..eb512f24e3ac 100644 --- a/tests/lua-tests/project/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/tests/lua-tests/project/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/tests/performance-tests/proj.android/gradle/wrapper/gradle-wrapper.properties b/tests/performance-tests/proj.android/gradle/wrapper/gradle-wrapper.properties index 0a6df8a2ce2e..4983492eeae0 100644 --- a/tests/performance-tests/proj.android/gradle/wrapper/gradle-wrapper.properties +++ b/tests/performance-tests/proj.android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip From 8b9900a842d5fed889e583b76df56a6a43256634 Mon Sep 17 00:00:00 2001 From: Arnold <397136899@qq.com> Date: Tue, 23 Jul 2019 10:35:41 +0800 Subject: [PATCH 6/8] review fix --- .../runtime-src/proj.android/app/build.gradle | 38 +++---------------- 1 file changed, 6 insertions(+), 32 deletions(-) diff --git a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle index 4e5f0dc20afe..4d2be9c919ba 100644 --- a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle +++ b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle @@ -13,29 +13,9 @@ android { versionName "1.0" externalNativeBuild { - if (PROP_BUILD_TYPE == 'ndk-build') { - ndkBuild { - targets 'cocos2dlua' - arguments 'NDK_TOOLCHAIN_VERSION=clang' - arguments '-j' + Runtime.runtime.availableProcessors() - - def module_paths = [project.file("../../../cocos2d-x").absolutePath, - project.file("../../../cocos2d-x/cocos").absolutePath, - project.file("../../../cocos2d-x/external").absolutePath] - if (OperatingSystem.current().isWindows()) { - module_paths = module_paths.collect {it.replaceAll('\\\\', '/')} - arguments 'NDK_MODULE_PATH=' + module_paths.join(";") - } - else { - arguments 'NDK_MODULE_PATH=' + module_paths.join(':') - } - } - } - else if (PROP_BUILD_TYPE == 'cmake') { - cmake { - arguments "-DCMAKE_FIND_ROOT_PATH=", "-DANDROID_STL=c++_static", "-DANDROID_TOOLCHAIN=clang", "-DANDROID_ARM_NEON=TRUE" - cppFlags "-frtti -fexceptions -fsigned-char" - } + cmake { + arguments "-DCMAKE_FIND_ROOT_PATH=", "-DANDROID_STL=c++_static", "-DANDROID_TOOLCHAIN=clang", "-DANDROID_ARM_NEON=TRUE" + cppFlags "-frtti -fexceptions -fsigned-char" } } @@ -54,16 +34,10 @@ android { } externalNativeBuild { - if (PROP_BUILD_TYPE == 'ndk-build') { - ndkBuild { - path "jni/Android.mk" - } - } - else if (PROP_BUILD_TYPE == 'cmake') { - cmake { - path "../../../../CMakeLists.txt" - } + cmake { + path "../../../../CMakeLists.txt" } + } signingConfigs { From 2841bc5f9f6b687394e73c40bde3a93bd6eefebf Mon Sep 17 00:00:00 2001 From: Arnold <397136899@qq.com> Date: Tue, 23 Jul 2019 10:56:35 +0800 Subject: [PATCH 7/8] fix --- .../runtime-src/proj.android/app/build.gradle | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle index 4d2be9c919ba..979438d7902c 100644 --- a/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle +++ b/templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle @@ -37,7 +37,6 @@ android { cmake { path "../../../../CMakeLists.txt" } - } signingConfigs { @@ -63,23 +62,12 @@ android { if (project.hasProperty("RELEASE_STORE_FILE")) { signingConfig signingConfigs.release } - - externalNativeBuild { - ndkBuild { - arguments 'NDK_DEBUG=0' - } - } } debug { debuggable true jniDebuggable true renderscriptDebuggable true - externalNativeBuild { - ndkBuild { - arguments 'NDK_DEBUG=1' - } - } } } } From 832b6a0d1a346a622b96c36c479a75311c681ff6 Mon Sep 17 00:00:00 2001 From: PatriceJiang#Set <397136899@qq.com> Date: Tue, 23 Jul 2019 15:38:31 +0800 Subject: [PATCH 8/8] revert lua binding --- .../lua-bindings/auto/lua_cocos2dx_backend_auto.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp index be79d89194d7..028499ef770a 100644 --- a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp +++ b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_backend_auto.cpp @@ -1998,21 +1998,24 @@ int lua_cocos2dx_backend_VertexLayout_setLayout(lua_State* tolua_S) #endif argc = lua_gettop(tolua_S)-1; - if (argc == 1) + if (argc == 2) { unsigned int arg0; + cocos2d::backend::VertexStepMode arg1; ok &= luaval_to_uint32(tolua_S, 2,&arg0, "ccb.VertexLayout:setLayout"); + + ok &= luaval_to_int32(tolua_S, 3,(int *)&arg1, "ccb.VertexLayout:setLayout"); if(!ok) { tolua_error(tolua_S,"invalid arguments in function 'lua_cocos2dx_backend_VertexLayout_setLayout'", nullptr); return 0; } - cobj->setLayout(arg0); + cobj->setLayout(arg0, arg1); lua_settop(tolua_S, 1); return 1; } - luaL_error(tolua_S, "%s has wrong number of arguments: %d, was expecting %d \n", "ccb.VertexLayout:setLayout",argc, 1); + luaL_error(tolua_S, "%s has wrong number of arguments: %d, was expecting %d \n", "ccb.VertexLayout:setLayout",argc, 2); return 0; #if COCOS2D_DEBUG >= 1