Commit Graph

351 Commits

Author SHA1 Message Date
halx99 846231e2f1 Fix #522 2021-10-12 13:16:27 +08:00
halx99 c270fc3579 Remvoe lua 64bit bytecode spec
a. since we know how to compile compatible bytecode for both plainlua and LuaJIT
2021-10-11 23:26:25 +08:00
halx99 bbd3a78ae4 Improve lua workflow on windows
a. Use working directory as default resource root on windows
b. Don't copy res and scripts to build binary dir on windows
c. Always build plainlua as dll on windows for fast debug
d. Remove 64bit spec search path for lua script
2021-10-07 18:44:34 +08:00
halx99 56edf5c339 Fix xcode build warnings 2021-08-12 15:54:16 +08:00
halx99 6ee687302b Xcode Embed Frameworks support
refer to: https://gitlab.kitware.com/cmake/cmake/-/issues/22412#note_997156
2021-08-10 11:43:16 +08:00
halx99 7ee1785858 Improve Lua RTTI performance [ci build] 2021-06-18 12:23:10 +08:00
halx99 61af6d75f9 Update readme guide and fixup [ci build] 2021-06-08 21:53:18 +08:00
halx99 29015e1cd7 Make gradle utils file as shared [ci build] 2021-06-02 06:27:19 +08:00
halx99 f0dc1582fb [Gradle] Find ndk with env ANDROID_NDK [ci build] 2021-06-02 05:37:18 +08:00
halx99 adce3298de Fix lua build [ci build] 2021-05-24 19:18:15 +08:00
HALX99 a42f9ac25c
Renaming refactor (#353) [ci build] 2021-05-18 16:40:30 +08:00
halx99 97e8d4c58a Replace jcenter with mavenCentral [ci build] 2021-05-15 12:15:38 +08:00
halx99 bb1871b0e0 Gradle Plugin no longer support cmake 3.10.0+ 2021-05-15 11:58:56 +08:00
halx99 412a6fa9e2 Fix android ci [ci build] 2021-05-15 00:12:41 +08:00
halx99 798e0fe1a1 Update gradle stubs [ci build]
a. wrapper  to  6.9
b. plugin to 4.2.0
2021-05-14 12:11:19 +08:00
halx99 3348f10813 Make tests could build at external location [ci build] 2021-05-02 17:23:39 +08:00
halx99 49c1318fc1 Explicit set cmake minimum version at app/build.gradle [ci build] 2021-04-22 11:40:53 +08:00
halx99 e8c1d7bc2c Set cmake min version to 3.10 [ci build] 2021-04-21 14:05:44 +08:00
halx99 3ff5b16847 Ensure build native first before compile java code 2021-04-20 20:25:32 +08:00
halx99 d33ffa67cd Set gradle-wrapper to 6.8.3 [ci build] 2021-04-08 22:42:15 +08:00
halx99 9972ddd71c fix lua-tests cmake script 2021-03-26 17:10:37 +08:00
halx99 adf3483943 Fix CMakeLists for separating test projects [ci build] 2021-03-15 09:50:32 +08:00
halx99 46287b84c2 Rollback gradle plugin version 4.0.1, since there is no benefit upgrade to 4.1.0 2020-11-12 22:50:38 +08:00
halx99 755714c103 CMake, use file TO_CMAKE_PATH instead string replace [ci build] 2020-11-12 22:47:35 +08:00
halx99 975ef2ff61 Lock name 2020-10-24 21:57:36 +08:00
halx99 8a69a3a5cc Set CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET at toolchain file ios.mini.cmake 2020-10-22 17:50:25 +08:00
halx99 eb52b0d319 Make setup.py works with python3 2020-10-22 16:53:28 +08:00
halx99 119e62f164 Update gradle plugin to 4.1.0 2020-10-21 10:55:32 +08:00
halx99 25cc511532 fix lua build link on android 2020-10-19 23:21:40 +08:00
halx99 bacba846af Sync SharedLoader template. 2020-10-19 19:19:17 +08:00
halx99 919d48d68e Finish cpp and lua template to use env var 'COCOS2DX_ROOT' to avoid copy whole engine source when new project. 2020-10-19 18:33:10 +08:00
halx99 8450babc16 Remove gradle compile lua to fix compile error, needs tools to compile and encrypt lua later 2020-10-18 01:12:11 +08:00
halx99 4142499bc4 Use system env var 'COCOS2DX_ROOT' to avoid copy whole engine sources when create new project with template 2020-10-18 01:05:36 +08:00
halx99 dfce234ced Use system env var 'COCOS2DX_ROOT' to avoid copy whole engine sources when create new project with template 2020-10-18 01:01:36 +08:00
halx99 71c9b2b101 fix #146 2020-08-18 10:51:32 +08:00
halx99 67ef8bb624 Improve shared library for android, remove mojoal,sdl2, still use OpenAL.framework on apple platform, alsoft on other platforms. 2020-08-17 18:45:14 +08:00
halx99 bcc00eaffe Sets Gradle Plugin version to 3.4.0 to fix cmake can't recognize ninja 2020-08-10 15:04:12 +08:00
halx99 6eb58f58bd Optimize CMake scripts 2020-08-04 14:05:00 +08:00
halx99 da7e235b25 Optimize link, remove -Wl,--whole-archive for linking 3rd libs. 2020-07-29 18:55:45 +08:00
halx99 d1cd05c0c8 Copy angle binaries 2020-07-23 10:32:50 +08:00
halx99 5416b4d34c Remove xxtea, cleanup xxtea reference sources 2020-02-15 20:54:33 +08:00
halx99 3f78448495 Fix .so auto link when folder not exists 2020-02-04 20:57:20 +08:00
halx99 a40c81e984 load .so at AppActivity.java 2020-02-04 19:22:11 +08:00
halx99 a350f4be88 solve auto link .so for android platform 2020-02-03 21:18:23 +08:00
minggo 589e09c328 set xcode installation path to (#20402) 2020-01-18 20:40:21 +08:00
Arnold cdc0d4702c [bugfix] set CFBundleExectuable in template info.plist (#20425)
fix #20414
2020-01-18 20:40:00 +08:00
Arnold b74af1970b [bugfix] set Info.plist path (#20405)
fix bug introduced in #20205
2019-12-12 23:55:18 +08:00
Arnold 3b4748009f
use copy instead of linkis (#20356) 2019-11-21 15:12:37 +08:00
Arnold e3c636c23c Sync resource automatically on Windows and Linux (#20319) 2019-11-15 10:24:38 +08:00
Arnold 6a53b31d08 [bugfix] add pagezero_size link flags (#20321) 2019-11-13 11:07:52 +08:00
minggo 98ab6d23b6
set iOS default deployment version in correct place (#20307) 2019-11-08 10:30:51 +08:00
minggo 5acc952a17
fix iOS build issue (#20292) 2019-11-05 15:23:54 +08:00
coulsonwang 8126cfafd5 add defualt ios deloyment target (#20282)
* add defualt ios deloyment target
2019-11-01 17:07:52 +08:00
minggo 2f79eb10af fix installation error on some Android devices
May meet "The application could not be installed: INSTALL_FAILED_TEST_ONLY" error on some devices.
2019-10-29 11:35:22 +08:00
coulsonwang ee4432661c fix label text word wrong warp issue (#20226) 2019-10-23 14:13:38 +08:00
Andy Duplain 1a04787287 Rework CMake Xcode support. (#20205)
- Build using C++17 by default.
- Simplified customization of Xcode project via cmake.
- Add documentation to demonstrate how to use the customization.

- NOTE: I believe we could compile with bitcode enabled if the box2d
        library was compiled using bitcode.
2019-10-22 13:42:56 +08:00
coulsonwang 67ae2e756e fix ProgramState and Program performance (#20189)
* fix ProgramState and Program performance

* fix review

* fix

* add autorelease
2019-10-15 09:40:59 +08:00
Arnold 96ae05d511 [bugfix] Android compile error on arm64 (#20128)
* add --no-warn-shared-textrel only in android/x86

* update comment position
2019-09-18 09:21:56 +08:00
Arnold 56c9ec137c add link flags (#20069) 2019-09-02 09:39:43 +08:00
coulsonwang c4e6ede197 move VertexLayout to ProgramState (#20029)
* move VertexLayout to ProgramState

* fix lua
2019-08-15 16:51:49 +08:00
Arnold f440369f1c Update gradle to 5.1.1 (#19958) 2019-07-24 09:53:02 +08:00
coulsonwang 57a3bd98f1 fix glfw3.3 no respond issue (#19963) 2019-07-23 16:58:35 +08:00
coulsonwang 7b7cf55efb remove vertex step mode (#19921) 2019-07-17 13:59:37 +08:00
Arnold 888cd9b159 fix lua (#19888) 2019-07-02 09:29:20 +08:00
Arnold cf83c91480 [cmake] Update plist template for iOS projects (#19828)
* update cmake template

* fix tabs

* use function instead of macros

* rename local variables & cocos_fake_set

* use g++ 7 in travis ci

* use clang

* use g++6
2019-06-17 18:37:56 -07:00
minggo 1273fb305d
Remove simple audio engine (#19802) 2019-06-11 18:23:16 -07:00
Arnold a826515bbe
extend buffer size 2019-06-10 01:33:20 +08:00
patricejiang 6706c4dd04
save 2019-06-06 17:15:17 +08:00
minggo 46ffa8e03d
remove PROP_BUILD_TYPE (#19795)
since only support cmake now
2019-06-04 18:29:58 -07:00
Arnold 8a7d6a77f5 merge (#19669) 2019-05-07 00:50:29 -07:00
Arnold 98d5f37a30 fix lua-tests errors (#19646)
* enable test case

* save

* generate enum classes

* save

* autobindg backend interface

* safe

* fix typos

* fix setUniform

* enable draw primitives and fast tmx tiled map

* save all

* update

* fix compile error on mac

* fix locations

* fix locations

* deduce vertexlayout

* clean

* compile on mac

* fix resource path

* save

* update bindings-generator

* remove unused code

* rename ccbackend to ccb

* remove todo
2019-05-05 00:26:34 -07:00
John c259918d03 Optimize cases where loop variable is unecessarily copied in a range-for loop. (#19637) (#19640)
Pass by const reference when appropriate.
2019-04-27 18:20:22 -07:00
minggo 0138db855f
make lua-tests work (#19471) 2019-03-07 11:34:02 +08:00
leda 4f0ef25c6f sync cmake changes into metal-support (#19335)
* sync #19327

* sync #19329
2019-01-23 09:55:55 +08:00
minggo 8d9bd925c9
metal support for cocos2d-x (#19305)
* remove deprecated files

* remove some deprecated codes

* remove more deprecated codes

* remove ui deprecated codes

* remove more deprecated codes

* remove deprecated codes in ccmenuitem

* remove more deprecated codes in ui

* remove more deprecated codes in ui

* remove more deprecated codes in ui

* remove more deprecated codes

* remove more deprecated codes

* remove more deprecated codes

* remove vr related codes and ignore some modules

* remove allocator

* remove some config

* 【Feature】add back-end project file

* [Feature] add back-end file

* add pipeline descriptor and shader cache

* [Feature] support sprite for backend

* [Feature] remove unneeded code

* [Feature] according to es2.0 spec, you must use clamp-to-edge as  texture wrap mode, and no mipmapping for non-power-of-two texture

* [Feature] set texture wrap mode to clamp-to-edge, and no mipmapping for non-power-of-two texture

* [Feature] remove macro define to .cpp file

* [Feature] add log info

* [Feature] add PipelineDescriptor for TriangleCommand

* [Feature] add PipelineDescriptor object as member of TriangleCommand

* [Feature] add getPipelineDescriptor method

* add renderbackend

* complete pipeline descriptor

* [Feature] add viewport in RenderCommand

* set viewport when rendrering

* [Feature] occur error when using RendererBackend, to be fixed.

* a workaround to fix black screen on macOS 10.14 (#19090)

* add rendererbackend init function

* fix typo

* [Feature] modify testFile

* [BugFix] modify shader path

* [Feature] set default viewport

* fix projection

* [Feature] modify log info

* [BugFix] change viewport data type to int

* [BugFix] add BindGroup to PipelienDescriptor

* [BugFix] change a_position to vec3 in sprite.vert

* [BugFix] set vertexLayout according to V3F_C4B_T2F structure

* [Feature] revert a_position to vec4

* [Feature] renderer should not use gl codes directly

* [Feature] it's better not use default value parameter

* fix depth test setting

* rendererbackend -> renderer

* clear color and depth at begin

* add metal backend

* metal support normalized attribute

* simplify codes

* update external

* add render pass desctriptor in pipeline descriptor

* fix warnings

* fix crash and memeory leak

* refactor Texture2D

* put pipeline descriptor into render command

* simplify codes

* [Feature] update Sprite

* fix crash when closing app

* [Feature] update SpriteBatchNode and TextureAtlas

* support render texture(not finish)

* [Feature] remove unused code

* make tests work on mac

* fix download-deps path error

* make tests work on iOS

* [Feature] support ttf under normal label effect

* refactor triangle command processing

* let renderer handle more common commands

* refactor backend

* make render texture work

* [Feature] refactor backend for GL

* [Feature]Renaming to make it easy to understand

* [Feature] change warp mode to CLAMP_TO_EDGE

* fix ghost

* simplify visit render queue logic

* support progress timer without rial mode

* support partcile system

* Feature/update label (#149)

* [BugFix] fix compile error

* [Feature] support outline effect in ios

* [Feature] add shader file

* [BugFix] fix begin and end RenderPass

* [Feature] update CustomCommand

* [Feature] revert project.pbxproj

* [Feature] simplify codes

* [BugFix] pack AI88 to RGBA8888 only when outline enable

* [Feature] support shadow effect in Label

* [Feature] support BMFont

* [Feature] support glow effect

* [Feature] simplify shader files

* LabelAtlas work

* handle blend function correctly

* support tile map

* don't share buffer in metal

* alloc buffer size as needed

* support more tilemap

* Merge branch 'minggo/metal-support' into feature/updateLabel

* minggo/metal-support:
  support tile map
  handle blend function correctly
  LabelAtlas work
  Feature/update label (#149)
  support partcile system

# Conflicts:
#	cocos/2d/CCLabel.cpp
#	cocos/2d/CCSprite.cpp
#	cocos/2d/CCSpriteBatchNode.cpp
#	cocos/renderer/CCQuadCommand.cpp
#	cocos/renderer/CCQuadCommand.h

* render texture work without saving file

* use global viewport

* grid3d works

* remove grabber

* tiled3d works

* [BugFix] fix label bug

* [Feature] add updateSubData for buffer

* [Feature] remove setVertexCount

* support depth test

* add callback command

* [Feature] add UITest

* [Feature] update UITest

* [Feature] remove unneeded codes

* fix custom command issue

* fix layer color blend issue

* [BugFix] fix iOS compile error

* [Feature] remove unneeded codes

* [Feature] fix updateVertexBuffer

* layerradial works

* add draw test back

* fix batch issue

* fix compiling error

* [BugFix] support ETC1

* [BugFix] get the correct pipelineDescriptor

* [BugFix]  skip draw when backendTexture nullptr

* clipping node support

* [Feature] add shader files

* fix stencil issue in metal

* [Feature] update UILayoutTest

* [BugFix] skip drawing when vertexCount is zero

* refactor renderer

* add set global z order for stencil manager commands

* fix warnings caused by type

* remove viewport in render command

* [Feature] fix warnings caused by type

* [BugFix] clear vertexCount and indexCount for CustomComand when needed

* [Feature] update clear for CustomCommand

* ios use metal

* fix viewport issue

* fix LayerColorGradient crash

* [cmake] transport to android and windows (#160)

* save point 1

* compile on windows

* run on android

* revert useless change

* android set CC_ENABLE_CACHE_TEXTURE_DATA to 1

* add initGlew

* fix android crash

* add TODO new-renderer

* review update

* revert onGLFWWindowPosCallback

* fix android compiling error

* Impl progress radial (#162)

* progresstimer add radial impl

* default drawType to element

* dec invoke times of createVertexBuffer (#163)

* support depth/stencil format for gl backend

* simplify progress timer codes

* support motionstreak, effect is wrong

* fix motionstreak issue

* [Feature] update Scissor Test (#161)

* [Feature] update Scissor Test

* [Feature] update ScissorTest

* [Feature] rename function

* [Feature] get constant reference if needed

* [Feature] show render status (#164)

* improve performance

* fix depth state

* fill error that triangle vertex/index number bigger than buffer

* fix compiline error in release mode

* fix buffer conflict between CPU and GPU on iOS/macOS

* Renderer refactor (#165)

* use one vertes/index buffer with opengl

* fix error on windows

* custom command support index format config

* CCLayer: compact vertex data structure

* update comment

* fix doc

* support fast tilemap

* pass index format instead

* fix some wrong effect

* fix render texture error

* fix texture per-element size

* fix texture format error

* BlendFunc type refactor, GLenum -> backend::BlendFactor  (#167)

* BlendFunc use backend::BlendFactor as inner field

* update comments

* use int to replace GLenum

* update xcode project fiel

* rename to GLBlendConst

* add ccConstants.h

* update xcode project file

* update copyright

* remove primitive command

* remove CCPrimitive.cpp/.h

* remove deprecated files

* remove unneeded files

* remove multiple view support

* remove multiple view support

* remove the usage of frame buffer in camera

* director don't use frame buffer

* remove FrameBuffer

* remove BatchCommand

* add some api reference

* add physics2d back

* fix crash when close app on mac

* improve render texture

* fix rendertexture issue

* fix rendertexture issue

* simplify codes

* CMake support for mac & ios (#169)

* update cmake

* fix compile error

* update 3rd libs version

* remove CCThread.h/.cpp

* remove ccthread

* use audio engine to implement simple audio engine

* remove unneeded codes

* remove deprecated codes

* remove winrt macro

* remove CC_USE_WIC

* set partcile blend function in more elegant way

* remove unneeded codes

* remove unneeded codes

* cmake works on windows

* update project setting

* improve performance

* GLFloat -> float

* sync v3 cmake improvements into metal-support (#172)

* pick: modern cmake, compile definitions improvement (#19139)

* modern cmake, use target_compile_definitions partly

* simplify macro define, remove USE_*

* modern cmake, macro define

* add physics 2d macro define into ccConfig.h

* remove USE_CHIPMUNK macro in build.gradle

* remove CocosSelectModule.cmake

* shrink useless define

* simplify compile options config, re-add if necessary

* update external for tmp CI test

* un-quote target_compile_options value

* add "-g" parameter only when debug mode

* keep single build type when generator Xcode & VS projecy

* update external for tmp CI tes

* add static_cast<char>(-1), fix -Wc++11-narrowing

* simplify win32 compile define

* not modify code, only improve compile options

# Conflicts:
#	.gitignore
#	cmake/Modules/CocosConfigDepend.cmake
#	cocos/CMakeLists.txt
#	external/config.json
#	tests/cpp-tests/CMakeLists.txt

* modern cmake, improve cmake_compiler_flags (#19145)

* cmake_compiler_flags

* Fix typo

* Fix typo2

* Remove chanages from Android.mk

*  correct lua template cmake build (#19149)

* don't add -Wno-deprecated into jsb target

* correct lua template cmake build

* fix win32 lua template compile error

* prevent cmake in-source-build friendly (#19151)

* pick: Copy resources to "Resources/" on win32 like in linux configuration

* add "/Z7" for cpp-tests on windows

* [cmake] fix iOS xcode property setting failed (#19208)

* fix iOS xcode property setting failed

* use search_depend_libs_recursive at dlls collect

* fix typo

* [cmake] add find_host_library into iOS toolchain file (#19230)

* pick: [lua android] use luajit & template cmake update (#19239)

* increase cmake stability ,  remove tests/CMakeLists.txt (#19261)

* cmake win32 Precompiled header (#19273)

* Precompiled header

* Fix

* Precompiled header for cocos

* Precompiled header jscocos2d

* Fix for COCOS2D_DEBUG is always 1 on Android (#19291)

Related #19289

* little build fix, tests cpp-tests works on mac

* sync v3 build related codes into metal-support (#173)

* strict initialization for std::array

* remove proj.win32 project configs

* modern cmake, cmake_cleanup_remove_unused_variables (#19146)

* Switch travis CI to xenial (#19207)

* Switch travis CI to xenial

* Remove language: android

* Set language: cpp

* Fix java problem

* Update sdkmanager

* Fix sdkmanger

* next sdkmanager fix

* Remove xenial from android

* revert to sdk-tools-{system}-3859397

* Remove linux cmake install

* Update before-install.sh

* Update .travis.yml

* Simplify install-deps-linux.sh, tested on Ubuntu 16.04 (#19212)

* Simplify install-deps-linux.sh

* Cleanup

* pick: install ninja

* update cocos2d-console submodule

* for metal-support alpha release, we only test cpp

* add HelloCpp into project(Cocos2d-x) for tmp test

* update extenal metal-support-4

* update uniform setting

* [Feature] update BindGroup

* [Feature] empty-test

* [Feature] cpp-test

* [Feature] fix GL compiler error

* [Feature] fix GL crash

* [Feature] empty-test

* [Feature] cpp-tests

* [feature] improve frameRate

* [feature] fix opengl compile error

* [feature] fix opengl compile error

* [BugFix] fix compute maxLocation error

* [Feature] update setting unifrom

* [Feature] fix namespace

* [Feature] remove unneeded code

* [Bugfix] fix project file

* [Feature] update review

* [texture2d] impl texture format support  (#175)

* texture update

* update

* update texture

* commit

* compile on windows

* ddd

* rename

* rename methods

* no crash

* save gl

* save

* save

* rename

* move out pixel format convert functions

* metal crash

* update

* update android

* support gles compressed texture format

* support more compress format

* add more conversion methods

* ss

* save

* update conversion methods

* add PVRTC format support

* reformat

* add marco linux

* fix GL marcro

* pvrtc supported only by ios 8.0+

* remove unused cmake

* revert change

* refactor Texture2D::initWithData

* fix conversion log

* refactor Texture2D::initWithData

* remove some OpenGL constants for PVRTC

* add todo

* fix typo

* AutoTest works on mac/iOS by disable part cases, sync v3 bug fix (#174)

* review cpp-tests, and fix part issues on start auto test

* sync png format fix: Node:Particle3D abnormal texture effects #19204

* fix cpp-tests SpritePolygon crash, wrong png format (#19170)

* fix wrong png convert format from sRGB to Gray

* erase plist index if all frames was erased

* test_A8.png have I8 format, fix it

* [CCSpriteCache] allow re-add plist & add testcase (#19175)

* allow re-add plist & add testcase

* remove comments/rename method/update testcase

* fix isSpriteFramesWithFileLoaded & add testcase

* remove used variable

* remove unused variable

* fix double free issues when js/lua-tests exit on iOS (#19236)

* disable part cases, AutoTest works without crash on mac

* update cocos2dx files json, to test cocos new next

* fix spritecache plist parsing issue (#19269)

* [linux] Fix FileUtils::getContents with folder (#19157)

* fix FileUtils::getContents on linux/mac

* use stat.st_mode

* simplify

* [CCFileUtils] win32 getFileSize (#19176)

* win32 getFileSize

* fix stat

* [cpp test-Android]20:FileUtils/2 change title (#19197)

* sync #19200

* sync #19231

* [android lua] improve performance of lua loader (#19234)

* [lua] improve performance of lua loader

* remove cache fix

* Revert "fix spritecache plist parsing issue (#19269)"

This reverts commit f3a85ece4307a7b90816c34489d1ed2c8fd11baf.

* remove win32 project files ref in template.json

* add metal framework lnk ref into cpp template

* test on iOS, and disable part cases

* alBufferData instead of alBufferDataStatic for small audio file on Apple (#19227)

* changes AudioCache to use alBufferData instead of alBufferDataStatic

(also makes test 19 faster to trigger openal bugs faster)

The original problem: CrashIfClientProvidedBogusAudioBufferList
https://github.com/cocos2d/cocos2d-x/issues/18948
is not happening anymore, but there's still a not very frequent issue
that makes OpenAL crash with a call stack like this.
AudioCache::readDataTask > alBufferData > CleanUpDeadBufferList

It happes more frequently when the device is "cold", which means after
half an hour of not using the device (locked).

I could not find the actual source code for iOS OpenAL, so I used the
macOS versions:
https://opensource.apple.com/source/OpenAL/OpenAL-48.7/Source/OpenAL/oalImp.cpp.auto.html

They seem to use CAGuard.h to make sure the dead buffer list
has no threading issues. I'm worried because the CAGuard code I found
has macos and win32 define but no iOS, so I'm not sure. I guess the
iOS version is different and has the guard.

I could not find a place in the code that's unprotected by the locks
except the InitializeBufferMap() which should not be called more than
once from cocos, and there's a workaround in AudioEngine-impl for it.

I reduced the occurence of the CleanUpDeadBufferList crash by moving
the guard in ~AudioCache to cover the alDeleteBuffers call.

* remove hack method "setTimeout" on audio

* AutoTest works on iOS

* support set ios deployment target for root project

* enable all texture2d cases, since Jiang have fixed

* add CCTextureUtils to xcode project file (#176)

* add leak cases for SpriteFrameCache (#177)

* re-add SpriteFrameCache cases

* update template file json

* Update SpriteFrameCacheTest.cpp

* fix compiling error
2019-01-18 15:08:25 +08:00
CHP f3ef6b80de Update gradle 4.6, sdk28, android gradle plugin 3.1.0 (#19113)
* Update gradle 4.6, sdk28, android gradle  plugin 3.2.0

* Trigger build

* PROP_MIN_SDK_VERSION=16

* rollback to com.android.tools.build:gradle:3.1.0
2018-10-16 09:29:41 +08:00
leda 48cce75be4
remove un-elegant prebuilt feature in cmake (#19109)
* remove unclearly cmake prebuilt feature

* reduce useless code

* add project info print
2018-10-12 12:36:17 +08:00
leda 98120fb9d8
refactor cmake on use libs (#19054)
* link external build by modern cmake

* use "--whole-archive" for part android spec

* update travis

* update CI, add cmake tests on win32
2018-09-24 20:16:04 -07:00
leda e0210bd870
shorten the android build path, reduce long path error (#19045)
* remove import-add-path

* add module path into gradle

* modify PROP_BUILD_TYPE to ndk-build for tmp test

* import-module uv into ndk-build scripts

* part lib rename in Android.mk

* fix build path error on Lua&JS test project

* shorten all libs name, except external libs related

* "_static" suffix isn't necessary, since all internal build is static

* little catch

* re-change to cmake as default build type

* add both build type into Travis for android

* update external libs name

* fix gradlew cmd error

* update external config
2018-09-17 11:54:39 +08:00
minggo 7dcee2bcf9
Remove ccglstatecache (#19013) 2018-09-11 14:39:30 +08:00
leda 80279cbf21 mark cocos2dx activity as "singleTask" (#19010) 2018-09-04 13:57:44 +08:00
CHP 4797732518 change PROP_BUILD_TYPE from ndk-build to CMake (#18953)
* Update gradle and android gradle plugin

* PROP_BUILD_TYPE=cmake
2018-07-22 15:28:17 +08:00
CHP 2bab501cac Update android build tools to 27.0.3 (#18952)
* Update gradle and android gradle plugin

* Update android build tools to 27.0.3
2018-07-22 13:58:58 +08:00
CHP 01f5b19ebf Update gradle and android gradle plugin (#18951) 2018-07-22 13:47:21 +08:00
Valera d1597a0e3e Fix iCCP profile using mogrify (#18908) 2018-06-29 11:14:13 +08:00
leda 1ea57fe42a
let app resource path visible when executing "cmake .." on win32 (#18839) 2018-05-23 11:23:16 +08:00
leda e74e07bde4 refactor cmake copy res, fix #18813 (#18816)
* refactor cmake cocos copy res function

* refactor cmake dll copy from add_custom_command to configure_file
2018-05-17 09:07:17 +08:00
leda f5e35cfe4f check android Gradle config for release mode (#18804)
* update getCocosCommandPath function

* fix typo error in proguard-rules

* update gradle judge OperatingSystem API

* keep default ndk-build
2018-05-11 15:07:19 +08:00
leda 391f30a3f3 beauty cmake format, reduce duplicate defines (#18799)
* reduce cmake module duplicate

* make module use more clear, correct cmake style

* keep default physics option

* delete the modules distributed with cmake

* unify the cmake files format

* use AndroidNdkModules at cmake sys modules

* add cmake comments for win

* update cocos2dx files list, manually
2018-05-02 15:33:01 +08:00
leda 9275dda539 adjust android / linux build config for cocos CLI (#18780)
* make android native build default mode clear

* update android native build comment

* temp change sub-module, need change before merge

* change tests project cmake file dir

* change PROP_BUILD_TYPE to PROP_BUILD_TYPE

* change var name for build.gradle

* modify others 3 tests project config

* make compile_sdk_version same as target_sdk_version

* update sdk version in CI config script

* update sub-module to cocos2d

* let the cmake build of template  project more clear

* update cocos-console submodule
2018-04-24 13:46:20 +08:00
leda 383c5afa6b Fix sqlite link error,CMake support iOS app Icon (#18746)
* make pack iOS app on Device easier

* fix sqlite link error

* fix app no Icon on iOS when CMake generate Xcode project

* remove useless info.plist source add

* rollback default iOS platform to device

* update cmake readme for ios build

* change android default build to ndk-build, not cmake
2018-04-03 11:18:22 +08:00
leda 86ea3a8aee cmake add collect headers list, unify the logic of source add (#18722)
* fix mistake for ios lua template

* auto select headers depend on sources

* change cmake "cocos_build_app" from macro to function

* fix cmake dll repeat copy

* update travis srcipt

* add header list for cocos lib

* add header list in cmake files

* re-add include dir Classes

* improve template cpp var name

* remove func get_headers_by_sources

* cmake add simulator header list

* make source and header collect more clear

* improve macos app pkg

* improve ios pkg, run failed

* revert the ios pak logic, keep older

* expand var APP_BIN_DIR scope

* fix use sqlite3 error on linux

* fix win32 compile error

* remove multi-add mistake

* try to fix python install issue on travis

* fix js-tests build on android

* uninstall old python in travis

* add travis  python print info

* fix command ll to ls -l

* remove useless link

* PYTHON_BIN adapt homebrew python
2018-03-14 13:51:29 +08:00
leda 50ecf00115 cmake support win32 ,and support generate&use prebuilt libs (#18683)
* fix win32 prebuilt error, and set cmake as default android native build

* cpp-template support msvc

* add msvc version check

* add -D_USRLUASTATIC, fix lua lib cmake compile error

* fix cpp-empty-test res copy dir, add function needed

* improve msvc res copy

* refactor cmake copy dll logic

* fix cpp-tests compile error

* refactor copy dll temp

* refactor win32 exe using dlls

* js-project compile support cmake using msvc

* improve res mark for win32

* update the way of lua project res mark

* add D_USRLUASTATIC for lua project

* unify RELEASE Release to Release, add CMAKE_CONFIGURATION_TYPES

* improve VS shows targets, add folder

* improve mac/ios res mark

* reduce useless comments

* unify cpp src include variable

* refactor cpp test project  package logic

* improve pkg app logic

* start support prebuilt libs for cpp project using cmake

* improve prebuilt libs generate

* expand js/lua support prebuilt libs on mac

* adapt IDE generate libs path

* start do prebuilt for android

* improve the way of using external libs for prebuilt

* prebuilt libs support cpp-empty-test on android studio

* cpp-tests prebuilt libs, and remove useless

* start to improve libs using, to adapt prebuilt

* improve cpp tests prebuilt on android

* prebuilt support lua & js test on android

* prebuilt support cpp&js template

* rename prebuilt variabl, detail androd config

* finish android support prebuilt using cmake

* fix cmake script run in windows error

* reduce variable name length

* improve the way of win32 use dlls to adapt prebuilt

* loosen pick js/lua engine lib condition

* self review and start check linux build

* unify compile option location

* strict copy dlls condition

* improve libs link order

* start redo the way of copy dlls

* unify dlls copy logic

* fix linux res copy error

* update cmake copy file path in linux

* make prebuilt dir if needed, and divide Debug and Release dir

* cmake win32 divide Debug and Release dir well

* comment Lua Template project, for the unfinished lua simulator support

* add simulator cmake file

* start support simulator

* simulator support cmake build on macOS

* fix simulator compile error on win32

* add simulator prebuilt support

* improve mark cocos app macro

* improve cmake template project format

* improve cmake app files format

* fix format improve mistake

* detail cmake readme

* improve readme, useless comments

* add game.rc to template project

* check travis openssl version

* try update travis openssl

* upgrade travis openssl

* change openssl link

* change to upgrade openssl

* re install python with upgrade openssl

* add comment for macro and func, improve variable name
2018-03-08 09:47:57 +08:00
leeda edee97278f V3 android cmake support, add mac/ios support (#18646)
* CMake build improvements

* android cmake support

* Enable proguard for cocos2d

* examples & test cmake support

* add android build type param to gradle.properties file

* less warnings

* update all android configs to recomended settings

* fix network cmake error

* fix js-tests cmake error

* android build config, add cmake

* android build config, add cmake

* add lua share lib

* android lua cmake build fix

* fix

* luajit test

* run fail, still

* fix js-warning

* correct lua main include

* lua test project cmake support android

* try to add lua-template cmake support

* lua template fix

* js_tests support cmake on android

* js-tests improve

* cmake support js-template

* test to realise prebuild

* cmake improve, no feature

* improve templates cmake

* refactor cmake struct

* correct cpp-tests cmake

* cpp-templates cmake improve

* typo fix

* cmake struct refator

* change default option

* adapt new project struct

* uniform cmake test style

* add_dependencies to support make -j

* little struct improve

* little fix

* adapt cmake bin dir

* little improve about cmake version

* change build all tests condition

* add source_group for Xcode

* add mark source files

* add more mark source code

* add template project to test

* add macos info.plist template

* add pak macos for all project

* lua test icon fix

* not consider lua project for now

* modify pak method

* add another ios toolchain

* add ios system library

* update ios toolchain, and reduce ios compile errors

* reduce error

* make ios engine lib compile pass

* cpp-empty-test ios bundle

* cpp-tests ios support

* js-tests ios support

* templates project support ios

* fix the way of lua-tests package

* try to fix lua-template on macOS

* comment lua-template sim file

* improve display on xcode

* update cmake readme

* check android compile again

* fix android compile error

* fix linux cmake res error

* update deps version, for cmake

* fix lua_template linux compile error

* close android cmake support for now

* review template android share library name

* change PROP_BUILD_TOOLS_VERSION version to 27.0.1

* change android compile version

* make `PROP_APP_PLATFORM` back, add comments for android native build

* Revert "make `PROP_APP_PLATFORM` back, add comments for android native build"

This reverts commit 272ddc19886891b9502cde070753a870c0fdb588.
2018-02-08 09:24:33 +08:00
leeda 18a6d8241d update Copyright. might need manual fix later (#18659)
* Copyright use python script updated. might be fix by manual later

* Revert "Copyright use python script updated. might be fix by manual later"

This reverts commit 49e99418e4da1fd02afda448ddeb16210f5e8c71.

* re modify copyright, consider utf-8-sig encoding

* another situation, add Copyright before  "Permission is hereby granted"

* Revert "another situation, add Copyright before  "Permission is hereby granted""

This reverts commit ee82591d32353c7ce2e146fe51ef447433b47571.

* another situation, add Copyright before Permission is hereby granted

* change "Copyright (c) 2016-2016 Chukong Technologies Inc." to " Copyright (c) 2016 Chukong Technologies Inc."

* script modify copyright, consider is cocos copyright or not

* change "Copyright (c) 2017 Chukong Technologies Inc." to "Copyright (c) 2016 Chukong Technologies Inc."

* manual fix, not fix audio related

* change "2016-2016" to "2016"
2018-01-29 16:25:32 +08:00
newnon 5d006192aa V3 multisampling support (#18632)
* Multisampling support

* fix opengl initialization with multisampling

* fix merge conflict

* reverted default attributes
2018-01-19 09:28:22 +08:00
minggo 5151dfd6f9
Remove ant projects (#18532)
* remove proj.android

* remove ant building and rename proj.android-studio to proj.android

* not pass --android-studio
2017-12-04 18:00:45 +08:00
minggo 9c67dcab9d
remove proj.android (#18529) 2017-12-04 11:26:43 +08:00
minggo a7a61e6a83
travis build android studio projects (#18515) 2017-12-01 17:29:34 +08:00
James Chen b191318e15 Auto hide home indicator for iPhoneX. (#18514) 2017-11-27 17:08:34 +08:00