Commit 36d483e5e2b82eeefea4fdcfd421c4b247d75aca

Authored by Eric Lee
1 parent 2611ad83ba
Exists in master

Add Cloud9 IDE Support

Showing 5 changed files with 151 additions and 0 deletions Side-by-side Diff

conf/machine/smarct335x.conf
... ... @@ -35,6 +35,9 @@
35 35 UBOOT_ARCH = "arm"
36 36 UBOOT_MACHINE = "smarct335x_evm_uart3_config"
37 37  
  38 +# Specify Nodejs version if you would like Cloud9 to be build
  39 +PREFERRED_VERSION_nodejs-native_smarct335x = "0.8.21"
  40 +
38 41 # For built-in LCD by default
39 42 XSERVER += "xf86-input-tslib"
40 43  
recipes-devtools/cloud9/cloud9/0001-ide-use-node-as-interpreter-for-sketches-instead-of-.patch
  1 +From ac1953d04f3f26d6aa5d8f53a9397d3ba0e96fa3 Mon Sep 17 00:00:00 2001
  2 +From: Koen Kooi <koen@circuitco.com>
  3 +Date: Fri, 11 May 2012 15:23:02 +0000
  4 +Subject: [PATCH] ide: use 'node' as interpreter for sketches instead of
  5 + argv[0]
  6 +
  7 +This enables running scripts with node 0.6.x instead of 0.4.x
  8 +
  9 +Signed-off-by: root <root@beaglebone.(none)>
  10 +---
  11 + server/cloud9/ide.js | 2 +-
  12 + 1 files changed, 1 insertions(+), 1 deletions(-)
  13 +
  14 +diff --git a/server/cloud9/ide.js b/server/cloud9/ide.js
  15 +index ce782f5..6c4e0f7 100644
  16 +--- a/server/cloud9/ide.js
  17 ++++ b/server/cloud9/ide.js
  18 +@@ -53,7 +53,7 @@ var Ide = module.exports = function(options, httpServer, exts, socket) {
  19 + };
  20 +
  21 + this.$users = {};
  22 +- this.nodeCmd = process.argv[0];
  23 ++ this.nodeCmd = "node";
  24 +
  25 + var davOptions = {
  26 + node: this.options.mountDir,
  27 +--
  28 +1.7.7
recipes-devtools/cloud9/cloud9/cloud9-avahi.service
  1 +<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
  2 +<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
  3 +
  4 +<service-group>
  5 + <name replace-wildcards="yes">Cloud9 IDE on %h</name>
  6 + <service>
  7 + <type>_http._tcp</type>
  8 + <port>3000</port>
  9 + </service>
  10 +</service-group>
recipes-devtools/cloud9/cloud9/index.js
  1 +var o3 = require('./o3.js')
  2 +module.exports = o3.xml;
recipes-devtools/cloud9/cloud9_0.6.bb
  1 +DESCRIPTION = "Meet Cloud9, development-as-a-service for Javascripters and other developers"
  2 +HOMEPAGE = "http://c9.io"
  3 +LICENSE = "GPLv3"
  4 +LIC_FILES_CHKSUM = "file://LICENSE;md5=4784c3bcff601fd8f9515f52a11e7018"
  5 +
  6 +PR = "r3"
  7 +
  8 +DEPENDS = "libxml2 nodejs-native"
  9 +
  10 +# The original sass repo has been moved
  11 +
  12 +SRC_URI = "git://github.com/ajaxorg/cloud9.git;name=cloud9ide \
  13 + git://github.com/ajaxorg/o3;destsuffix=o3;name=o3 \
  14 + git://github.com/ajaxorg/ace.git;destsuffix=git/support/ace;name=ace \
  15 + git://github.com/ajaxorg/ace.wiki.git;destsuffix=git/support/ace/doc/wiki;name=acewiki \
  16 + git://github.com/ajaxorg/apf.git;destsuffix=git/support/apf;name=apf \
  17 + git://github.com/ajaxorg/async.js.git;destsuffix=git/support/asyncjs;name=asyncjs \
  18 + git://github.com/ajaxorg/connect.git;destsuffix=git/support/connect;name=connect \
  19 + git://github.com/jashkenas/coffee-script.git;destsuffix=git/support/connect/support/coffee-script;name=coffee-script \
  20 + git://github.com/visionmedia/expresso.git;destsuffix=git/support/connect/support/expresso;name=expresso \
  21 + git://github.com/visionmedia/node-jscoverage.git;destsuffix=git/support/connect/support/expresso/deps/jscoverage;name=jscoverage \
  22 + git://github.com/cloudhead/less.js.git;destsuffix=git/support/connect/support/less;name=less \
  23 + git://github.com/matehat/sass.js.git;destsuffix=git/support/connect/support/sass;name=sass \
  24 + git://github.com/ajaxorg/jsDAV.git;destsuffix=git/support/jsdav;name=jsdav \
  25 + git://github.com/fjakobs/async.js.git;destsuffix=git/support/jsdav/support/async.js;name=async-js \
  26 + git://github.com/felixge/node-formidable.git;destsuffix=git/support/jsdav/support/formidable;name=formidable \
  27 + git://github.com/ajaxorg/jsftp.git;destsuffix=git/support/jsdav/support/jsftp;name=jsftp \
  28 + git://github.com/Gozala/streamer.git;destsuffix=git/support/jsdav/support/jsftp/support/streamer;name=streamer \
  29 + git://github.com/ajaxorg/node-sftp.git;destsuffix=git/support/jsdav/support/node-sftp;name=sftp \
  30 + git://github.com/ajaxorg/lib-v8debug.git;destsuffix=git/support/lib-v8debug;name=lib-v8debug \
  31 + git://github.com/ajaxorg/socket.io.git;destsuffix=git/support/socket.io;name=socketio \
  32 + git://github.com/LearnBoost/socket.io-client.git;destsuffix=git/support/socket.io-client;name=socketio-client \
  33 + git://github.com/ajaxorg/treehugger.git;destsuffix=git/support/treehugger;name=treehugger \
  34 + git://github.com/ajaxorg/UglifyJS.git;destsuffix=git/support/uglify-js;name=uglify-js \
  35 + file://index.js \
  36 + file://cloud9-avahi.service \
  37 + file://0001-ide-use-node-as-interpreter-for-sketches-instead-of-.patch \
  38 + "
  39 +
  40 +SRCREV_cloud9ide = "c4e2574896a22bb749f0500b25f41c888d346bed"
  41 +SRCREV_o3 = "302cd3a6d5039f53a9fa3932bed88b53281c1e1e"
  42 +SRCREV_ace = "0fc5392cbe46fb134052c3065a238ad8e3b31cfd"
  43 +SRCREV_acewiki = "d2a65d0addc2e5ab922bbff9cb6022a4652b4f13"
  44 +SRCREV_apf = "2560b762b2b0e5a8b46f8a4062f927a9a9d239f4"
  45 +SRCREV_asyncjs = "d36ead408e2959b1e99572114ef3a1b6a48c1072"
  46 +SRCREV_connect = "6bec95b51f2286b942bc7f340d62d816bcdc13d4"
  47 +SRCREV_coffee-script = "a53c104db16d3ac9d13cf9f16834edec250b9749"
  48 +SRCREV_expresso = "7f10ab7fa655299b4e2f519065b0495e6ac34ef2"
  49 +SRCREV_jscoverage = "0d4608a6b4275b020ba665389aa75897d5d4a584"
  50 +SRCREV_less = "a2807288008587b95c6c2f8ba5cac16f1bcab98f"
  51 +SRCREV_sass = "4dfd4c699e7a8baf226215ab044854c4507f4420"
  52 +SRCREV_jsdav = "f04ebf3d012cc8aeabfcfb2b8fab8966d52929e9"
  53 +SRCREV_async-js = "92fb710a70efd3cdc2376ebfba71a7fb3a4f1651"
  54 +SRCREV_formidable = "a37292d4b7d6d76a38909ed670334c9068d40871"
  55 +SRCREV_jsftp = "e3f10c8927347c170cdd0150ef38e18272acf942"
  56 +SRCREV_streamer = "1a7f75d4065819171ac91a09974199b932dbe17d"
  57 +SRCREV_sftp = "a0539345134970d7535a19cb2608e3d1bc119d71"
  58 +SRCREV_lib-v8debug = "7c11897f4bc77c7275c2b6dff5becc72ac018662"
  59 +SRCREV_socketio = "735d5239b325df2ba67d2b9bb4ec32442283bc06"
  60 +SRCREV_socketio-client = "4375ef1344ecb8ad75a3848a00af6b391822f86b"
  61 +SRCREV_treehugger = "436d0d6dd0ce43782e6be08ad12c356730626996"
  62 +SRCREV_uglify-js = "941c845c4a01e4e47a158458fe846eb36d0828ad"
  63 +
  64 +SRCREV_FORMAT = "cloud9ide"
  65 +
  66 +S = "${WORKDIR}/git"
  67 +
  68 +do_configure () {
  69 + cd ${WORKDIR}/o3
  70 + node-waf -vv configure
  71 +}
  72 +
  73 +EXTRA_CXXFLAGS = "-Idefault/include -I../include -Idefault/hosts -I../hosts -Idefault/modules -I../modules -Idefault/deps -I../deps -I${STAGING_DIR_NATIVE}/usr/include/node -fPIC -DPIC"
  74 +
  75 +do_compile () {
  76 + cd ${WORKDIR}/o3
  77 + node tools/gluegen.js
  78 + cd hosts
  79 + ${CXX} ${TARGET_CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o sh_node.o node-o3/sh_node.cc
  80 + ${CXX} ${TARGET_CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o sh_node_libs.o node-o3/sh_node_libs.cc
  81 + cd ..
  82 + ${CXX} ${TARGET_LDFLAGS} hosts/sh_node.o hosts/sh_node_libs.o -o o3.node -shared -Wl,-Bdynamic -lxml2
  83 +}
  84 +
  85 +do_install () {
  86 + install -m 0755 -d ${D}${datadir}/cloud9 ${D}${bindir} ${D}/var/lib/cloud9
  87 + rsync -r --exclude=".*" ${S}/* ${D}${datadir}/cloud9
  88 +
  89 + touch ${D}${bindir}/cloud9
  90 + echo "#!/bin/sh" > ${D}${bindir}/cloud9
  91 + echo "node4 ${datadir}/cloud9/bin/cloud9.js -l 0.0.0.0 -w /var/lib/cloud9 -p 3000" >> ${D}${bindir}/cloud9
  92 + chmod 0755 ${D}${bindir}/cloud9
  93 +
  94 + install -m 0755 -d ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml
  95 + install -m 0644 ${WORKDIR}/index.js ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/index.js
  96 + install -m 0644 ${WORKDIR}/o3/modules/o3.js ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/o3.js
  97 + install -m 0755 ${WORKDIR}/o3/o3.node ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/o3.node
  98 +
  99 + install -m 0755 -d ${D}${sysconfdir}/avahi/services/
  100 + install -m 0644 ${WORKDIR}/cloud9-avahi.service ${D}${sysconfdir}/avahi/services/
  101 +}
  102 +
  103 +FILES_${PN}-dbg += "${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/.debug \
  104 + ${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/.debug \
  105 + "
  106 +
  107 +RDEPENDS_${PN} = "nodejs4 nodejs gzip"