-
Notifications
You must be signed in to change notification settings - Fork 488
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #7 from dumganhar/master
Adds travis-ci support and some fixes.
- Loading branch information
Showing
16 changed files
with
1,206 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
language: cpp | ||
script: | ||
- export PYTHON_BIN=/usr/bin/python | ||
- ./tools/travis-scripts/run-script.sh | ||
before_install: | ||
- ./tools/travis-scripts/before-install.sh | ||
env: | ||
matrix: | ||
- GEN_BINDINGS=YES | ||
- PLATFORM=android | ||
global: | ||
- secure: FlC71LfwoBQ0mvJnxLdScFunhWKTvpQhbheLneWBbEFYpRFiMBwBbkZ9CIgYwzVQA7Zf7smhPXJMWuch0R9332uc7H7WDx6l7iOW0tVxwCHP2BSkfIFXU433AQeS4/5OgZU8bJDUOoJKqNC0EpkQ+6elhuAnR4MP/KGx6mKtGU0= | ||
- secure: jZyWJln6/IQ0p0iSSsZOpifEZaW+M4tdaYiJt6Q+CL6GanJd9F2nP0tJdEGBOx2KKGWcyY0KKibO2xg6CBZnsmGxjU4G2QDIcQBtUFq+iKwkLIQ31jMqEGV6zPJVLMMNUfoOAKMppCgukyoPy7ugThuReHMAbjyy4AkKKjx4o9Q= | ||
- secure: gdYnnweKE19bzSrd728t21tIWeNIVhChd58WtIuA6SbJg5WsGScyFXtaA3NxmcGaAjIU9GC3zGfxH1upWMinypO3W+XUsZtRmOvIkPMDQjdPA9wNu4ekKNsytUjIcuG2T5+m0dZbHCtLcMELekZ5aazNgsk1F20xpbSSnVr2u5E= | ||
branches: | ||
only: | ||
- master | ||
- develop |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,6 @@ | ||
<img src="http://www.cocos2d-x.org/attachments/801/cocos2dx_portrait.png" width=200> | ||
|
||
cocos2d-js | ||
========== | ||
=========== | ||
|
||
cocos2d-x JS | ||
[![Build Status](https://travis-ci.org/cocos2d/cocos2d-js.png?branch=master)](https://travis-ci.org/cocos2d/cocos2d-js) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule bindings-generator
updated
64 files
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
How to Use bindings-generator | ||
================== | ||
|
||
On Windows: | ||
------------ | ||
|
||
* Make sure that you have installed `android-ndk-r9b`. | ||
* Download python2.7.3 (32bit) from (http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi). | ||
* Add the installed path of python (e.g. C:\Python27) to windows environment variable named 'PATH'. | ||
* Download pyyaml from http://pyyaml.org/download/pyyaml/PyYAML-3.10.win32-py2.7.exe and install it. | ||
* Download pyCheetah from https://raw.github.com/dumganhar/cocos2d-x/download/downloads/Cheetah.zip, unzip it to "C:\Python27\Lib\site-packages" | ||
* Set environment variables (`NDK_ROOT`) | ||
* Go to "cocos2d-x/tools/tojs" folder, and run "genbindings.py". The generated codes will be under "cocos\scripting\auto-generated\js-bindings". | ||
|
||
|
||
On MAC: | ||
---------- | ||
|
||
* The OSX 10.9 has a built-in python2.7 and if your os don't have python2.7 then use [Homebrew](http://brew.sh/) to install the python and use pip install the python dependencies. | ||
<pre> | ||
brew install python | ||
</pre> | ||
|
||
* Install python dependices by pip. | ||
<pre> | ||
sudo easy_install pip | ||
sudo pip install PyYAML | ||
sudo pip install Cheetah | ||
</pre> | ||
|
||
* Download [64bit ndk-r9b-x86_64](http://dl.google.com/android/ndk/android-ndk-r9b-darwin-x86_64.tar.bz2) from [google](http://developer.android.com/tools/sdk/ndk/index.html) | ||
* Run | ||
<pre> | ||
export NDK_ROOT=/path/to/android-ndk-r9b | ||
./genbindings.py | ||
</pre> | ||
|
||
|
||
On Ubuntu Linux 12.04 64bit | ||
------------ | ||
|
||
* Install python | ||
<pre> | ||
sudo apt-get install python2.7 | ||
</pre> | ||
* Install python dependices by pip. | ||
<pre> | ||
sudo apt-get install python-pip | ||
sudo pip install PyYAML | ||
sudo pip install Cheetah | ||
</pre> | ||
* Download [64bit ndk-r9b-x86_64]( https://dl.google.com/android/ndk/android-ndk-r9b-linux-x86_64.tar.bz2) from [google](http://developer.android.com/tools/sdk/ndk/index.html) | ||
* Go to "cocos2d-x/tools/tojs", Run | ||
<pre> | ||
export NDK_ROOT=/path/to/android-ndk-r9b | ||
./genbindings.py | ||
</pre> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,151 @@ | ||
[cocos2d-x] | ||
# the prefix to be added to the generated functions. You might or might not use this in your own | ||
# templates | ||
prefix = cocos2dx | ||
|
||
# create a target namespace (in javascript, this would create some code like the equiv. to `ns = ns || {}`) | ||
# all classes will be embedded in that namespace | ||
target_namespace = cc | ||
|
||
android_headers = -I%(androidndkdir)s/platforms/android-14/arch-arm/usr/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/include | ||
android_flags = -D_SIZE_T_DEFINED_ | ||
|
||
clang_headers = -I%(clangllvmdir)s/lib/clang/3.3/include | ||
clang_flags = -nostdinc -x c++ -std=c++11 | ||
|
||
cocos_headers = -I%(cocosdir)s/cocos/2d -I%(cocosdir)s/cocos/base -I%(cocosdir)s/cocos/physics -I%(cocosdir)s/cocos/2d/platform -I%(cocosdir)s/cocos/2d/platform/android -I%(cocosdir)s/cocos/math/kazmath/include | ||
cocos_flags = -DANDROID -DCOCOS2D_JAVASCRIPT | ||
|
||
cxxgenerator_headers = | ||
|
||
# extra arguments for clang | ||
extra_arguments = %(android_headers)s %(clang_headers)s %(cxxgenerator_headers)s %(cocos_headers)s %(android_flags)s %(clang_flags)s %(cocos_flags)s %(extra_flags)s | ||
|
||
# what headers to parse | ||
headers = %(cocosdir)s/cocos/2d/cocos2d.h %(cocosdir)s/cocos/audio/include/SimpleAudioEngine.h | ||
|
||
# what classes to produce code for. You can use regular expressions here. When testing the regular | ||
# expression, it will be enclosed in "^$", like this: "^Menu*$". | ||
classes = New.* Sprite.* Scene Node.* Director Layer.* Menu.* Touch .*Action.* Move.* Rotate.* Blink.* Tint.* Sequence Repeat.* Fade.* Ease.* Scale.* Transition.* Spawn Animat.* Flip.* Delay.* Skew.* Jump.* Place.* Show.* Progress.* PointArray ToggleVisibility.* RemoveSelf Hide Particle.* Label.* Atlas.* TextureCache.* Texture2D Cardinal.* CatmullRom.* ParallaxNode TileMap.* TMX.* CallFunc RenderTexture GridAction Grid3DAction GridBase$ .+Grid Shaky3D Waves3D FlipX3D FlipY3D Speed ActionManager Set SimpleAudioEngine Scheduler Orbit.* Follow.* Bezier.* CardinalSpline.* Camera.* DrawNode .*3D$ Liquid$ Waves$ ShuffleTiles$ TurnOffTiles$ Split.* Twirl$ FileUtils$ GLProgram ShaderCache Application ClippingNode MotionStreak TextFieldTTF GLViewProtocol GLView Component __NodeRGBA __LayerRGBA SAXParser | ||
|
||
|
||
classes_need_extend = Node Layer.* Sprite MenuItemFont Scene DrawNode | ||
|
||
# what should we skip? in the format ClassName::[function function] | ||
# ClassName is a regular expression, but will be used like this: "^ClassName$" functions are also | ||
# regular expressions, they will not be surrounded by "^$". If you want to skip a whole class, just | ||
# add a single "*" as functions. See bellow for several examples. A special class name is "*", which | ||
# will apply to all class names. This is a convenience wildcard to be able to skip similar named | ||
# functions from all classes. | ||
|
||
skip = Node::[^setPosition$ setGLServerState description getUserObject .*UserData getGLServerState .*schedule setContentSize setAnchorPoint], | ||
Sprite::[getQuad getBlendFunc ^setPosition$ setBlendFunc], | ||
NodeGrid::[setGrid], | ||
SpriteBatchNode::[getBlendFunc setBlendFunc getDescendants], | ||
MotionStreak::[getBlendFunc setBlendFunc draw update], | ||
AtlasNode::[getBlendFunc setBlendFunc], | ||
ParticleBatchNode::[getBlendFunc setBlendFunc], | ||
LayerColor::[getBlendFunc setBlendFunc], | ||
ParticleSystem::[getBlendFunc setBlendFunc], | ||
DrawNode::[getBlendFunc setBlendFunc drawPolygon listenBackToForeground], | ||
Director::[getAccelerometer (g|s)et.*Dispatcher getOpenGLView getProjection getFrustum getRenderer getConsole], | ||
Layer.*::[didAccelerate (g|s)etBlendFunc keyPressed keyReleased], | ||
Menu.*::[.*Target getSubItems create initWithItems alignItemsInRows alignItemsInColumns], | ||
MenuItem.*::[create setCallback initWithCallback], | ||
Copying::[*], | ||
LabelProtocol::[*], | ||
LabelTextFormatProtocol::[*], | ||
Label::[getLettersInfo createWithTTF setTTFConfig getFontAtlas], | ||
.*Delegate::[*], | ||
PoolManager::[*], | ||
Texture2D::[initWithPVRTCData addPVRTCImage releaseData setTexParameters initWithData keepData getPixelFormatInfoMap], | ||
Set::[begin end acceptVisitor], | ||
IMEDispatcher::[*], | ||
Thread::[*], | ||
Profiler::[*], | ||
ProfilingTimer::[*], | ||
CallFunc::[create initWithFunction (g|s)etTargetCallback], | ||
SAXParser::[(?!(init))], | ||
SAXDelegator::[*], | ||
Color3bObject::[*], | ||
TouchDispatcher::[*], | ||
EGLTouchDelegate::[*], | ||
ScriptEngineManager::[*], | ||
KeypadHandler::[*], | ||
Invocation::[*], | ||
GLView::[end swapBuffers], | ||
GLViewProtocol::[(?!setDesignResolutionSize|getVisibleSize|getVisibleOrigin)], | ||
SchedulerScriptHandlerEntry::[*], | ||
Size::[*], | ||
Point::[*], | ||
PointArray::[*], | ||
Rect::[*], | ||
String::[*], | ||
Data::[*], | ||
Dictionary::[*], | ||
Array::[*], | ||
Range::[*], | ||
NotificationObserver::[*], | ||
Image::[initWithString initWithImageData], | ||
Sequence::[create], | ||
Spawn::[create], | ||
Animation::[create], | ||
GLProgram::[getProgram setUniformLocationWith2f.* setUniformLocationWith1f.* setUniformLocationWith3f.* setUniformLocationWith4f.*], | ||
Grid3DAction::[create actionWith.* vertex originalVertex (g|s)etVertex getOriginalVertex], | ||
Grid3D::[vertex originalVertex (g|s)etVertex getOriginalVertex], | ||
TiledGrid3DAction::[create actionWith.* tile originalTile getOriginalTile (g|s)etTile], | ||
TiledGrid3D::[tile originalTile getOriginalTile (g|s)etTile], | ||
TMXLayer::[getTiles], | ||
TMXMapInfo::[startElement endElement textHandler], | ||
ParticleSystemQuad::[postStep setBatchNode draw setTexture$ setTotalParticles updateQuadWithParticle setupIndices listenBackToForeground initWithTotalParticles particleWithFile node], | ||
LayerMultiplex::[create layerWith.* initWithLayers], | ||
CatmullRom.*::[create actionWithDuration], | ||
Bezier.*::[create actionWithDuration], | ||
CardinalSpline.*::[create actionWithDuration setPoints], | ||
Scheduler::[pause resume unschedule schedule update isTargetPaused], | ||
TextureCache::[addPVRTCImage addImageAsync], | ||
*::[copyWith.* onEnter.* onExit.* ^description$ getObjectType onTouch.* onAcc.* onKey.* onRegisterTouchListener], | ||
FileUtils::[(g|s)etSearchResolutionsOrder$ (g|s)etSearchPaths$ getFileData getDataFromFile getWritablePath setPopupNotify destroyInstance getFullPathCache], | ||
Application::[^application.* ^run$], | ||
Camera::[getEyeXYZ getCenterXYZ getUpXYZ], | ||
ccFontDefinition::[*], | ||
NewTextureAtlas::[*], | ||
RenderTexture::[listenToBackground listenToForeground], | ||
TextFieldTTF::[(g|s)etDelegate] | ||
|
||
rename_functions = SpriteFrameCache::[addSpriteFramesWithFile=addSpriteFrames getSpriteFrameByName=getSpriteFrame], | ||
MenuItemFont::[setFontNameObj=setFontName setFontSizeObj=setFontSize getFontSizeObj=getFontSize getFontNameObj=getFontName], | ||
ProgressTimer::[setReverseProgress=setReverseDirection], | ||
AnimationCache::[addAnimationsWithFile=addAnimations], | ||
LayerGradient::[initWithColor=init], | ||
LayerColor::[initWithColor=init], | ||
GLProgram::[initWithVertexShaderByteArray=initWithString initWithVertexShaderFilename=init programLog=getProgramLog setUniformLocationWith1i=setUniformLocationI32], | ||
Node::[removeFromParentAndCleanup=removeFromParent removeAllChildrenWithCleanup=removeAllChildren getLocalZOrder=getZOrder setLocalZOrder=setZOrder], | ||
LabelAtlas::[create=_create], | ||
Sprite::[initWithFile=init], | ||
SpriteBatchNode::[initWithFile=init removeAllChildrenWithCleanup=removeAllChildren], | ||
Touch::[getID=getId], | ||
SimpleAudioEngine::[preloadBackgroundMusic=preloadMusic setBackgroundMusicVolume=setMusicVolume getBackgroundMusicVolume=getMusicVolume playBackgroundMusic=playMusic stopBackgroundMusic=stopMusic pauseBackgroundMusic=pauseMusic resumeBackgroundMusic=resumeMusic rewindBackgroundMusic=rewindMusic isBackgroundMusicPlaying=isMusicPlaying willPlayBackgroundMusic=willPlayMusic], | ||
FileUtils::[loadFilenameLookupDictionaryFromFile=loadFilenameLookup] | ||
|
||
rename_classes = ParticleSystemQuad::ParticleSystem, | ||
SimpleAudioEngine::AudioEngine, | ||
__NodeRGBA::NodeRGBA, | ||
__LayerRGBA::LayerRGBA | ||
|
||
# for all class names, should we remove something when registering in the target VM? | ||
remove_prefix = | ||
|
||
# classes for which there will be no "parent" lookup | ||
classes_have_no_parents = Node Director SimpleAudioEngine FileUtils TMXMapInfo Application GLViewProtocol SAXParser | ||
|
||
# base classes which will be skipped when their sub-classes found them. | ||
base_classes_to_skip = Ref Clonable | ||
|
||
# classes that create no constructor | ||
# Set is special and we will use a hand-written constructor | ||
abstract_classes = Action FiniteTimeAction ActionInterval ActionEase EaseRateAction EaseElastic EaseBounce ActionInstant GridAction Grid3DAction TiledGrid3DAction Director SpriteFrameCache TransitionEaseScene Set SimpleAudioEngine FileUtils Application ClippingNode Label GLViewProtocol GLView Component SAXParser | ||
|
||
# Determining whether to use script object(js object) to control the lifecycle of native(cpp) object or the other way around. Supported values are 'yes' or 'no'. | ||
script_control_cpp = no | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
[cocos2dx_builder] | ||
# the prefix to be added to the generated functions. You might or might not use this in your own | ||
# templates | ||
prefix = cocos2dx_builder | ||
|
||
# create a target namespace (in javascript, this would create some code like the equiv. to `ns = ns || {}`) | ||
# all classes will be embedded in that namespace | ||
target_namespace = cc | ||
|
||
android_headers = -I%(androidndkdir)s/platforms/android-14/arch-arm/usr/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/include | ||
android_flags = -D_SIZE_T_DEFINED_ | ||
|
||
clang_headers = -I%(clangllvmdir)s/lib/clang/3.3/include | ||
clang_flags = -nostdinc -x c++ -std=c++11 | ||
|
||
cocos_headers = -I%(cocosdir)s/cocos/2d -I%(cocosdir)s/cocos/base -I%(cocosdir)s/cocos/gui -I%(cocosdir)s/cocos/physics -I%(cocosdir)s/cocos/2d/platform -I%(cocosdir)s/cocos/2d/platform/android -I%(cocosdir)s/cocos/math/kazmath/include -I%(cocosdir)s/extensions -I%(cocosdir)s/external -I%(cocosdir)s/cocos/editor-support -I%(cocosdir)s | ||
|
||
cocos_flags = -DANDROID -DCOCOS2D_JAVASCRIPT | ||
|
||
cxxgenerator_headers = | ||
|
||
# extra arguments for clang | ||
extra_arguments = %(android_headers)s %(clang_headers)s %(cxxgenerator_headers)s %(cocos_headers)s %(android_flags)s %(clang_flags)s %(cocos_flags)s %(extra_flags)s | ||
|
||
# what headers to parse | ||
headers = %(cocosdir)s/cocos/editor-support/cocosbuilder/CocosBuilder.h | ||
|
||
# what classes to produce code for. You can use regular expressions here. When testing the regular | ||
# expression, it will be enclosed in "^$", like this: "^Menu*$". | ||
classes = CCBReader.* CCBAnimationManager.* | ||
|
||
# what should we skip? in the format ClassName::[function function] | ||
# ClassName is a regular expression, but will be used like this: "^ClassName$" functions are also | ||
# regular expressions, they will not be surrounded by "^$". If you want to skip a whole class, just | ||
# add a single "*" as functions. See bellow for several examples. A special class name is "*", which | ||
# will apply to all class names. This is a convenience wildcard to be able to skip similar named | ||
# functions from all classes. | ||
|
||
skip = CCBReader::[^CCBReader$ addOwnerCallbackName isJSControlled readByte getCCBMemberVariableAssigner readFloat getCCBSelectorResolver toLowerCase lastPathComponent deletePathExtension endsWith concat getResolutionScale getAnimatedProperties readBool readInt addOwnerCallbackNode addDocumentCallbackName readCachedString readNodeGraphFromData addDocumentCallbackNode getLoadedSpriteSheet initWithData readFileWithCleanUp getOwner$ readNodeGraphFromFile createSceneWithNodeGraphFromFile getAnimationManagers$ setAnimationManagers], | ||
CCBAnimationManager::[setAnimationCompletedCallback addNode getSequences getDelegate], | ||
.*Delegate::[*], | ||
.*Loader.*::[*], | ||
*::[^visit$ copyWith.* onEnter.* onExit.* ^description$ getObjectType .*HSV onTouch.* onAcc.* onKey.* onRegisterTouchListener] | ||
|
||
rename_functions = | ||
|
||
rename_classes = CCBReader::_Reader, | ||
CCBAnimationManager::BuilderAnimationManager | ||
|
||
# for all class names, should we remove something when registering in the target VM? | ||
remove_prefix = | ||
|
||
# classes for which there will be no "parent" lookup | ||
classes_have_no_parents = | ||
|
||
# base classes which will be skipped when their sub-classes found them. | ||
base_classes_to_skip = Ref | ||
|
||
# classes that create no constructor | ||
# Set is special and we will use a hand-written constructor | ||
abstract_classes = | ||
|
||
# Determining whether to use script object(js object) to control the lifecycle of native(cpp) object or the other way around. Supported values are 'yes' or 'no'. | ||
script_control_cpp = no | ||
|
Oops, something went wrong.