Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Build main.js

  • Loading branch information...
commit 37d71c5b1b3d6b7f8ff8de45733b386f6748adc3 1 parent 84e6e49
@rnewson rnewson authored
Showing with 57 additions and 0 deletions.
  1. +2 −0  rebar.config
  2. +55 −0 support/build_js.escript
View
2  rebar.config
@@ -36,3 +36,5 @@
{lib_dirs, ["src/"]}.
{erl_opts, [debug_info]}.
+
+{post_hooks, [{compile, "escript support/build_js.escript"}]}.
View
55 support/build_js.escript
@@ -0,0 +1,55 @@
+%% -*- tab-width: 4;erlang-indent-level: 4;indent-tabs-mode: nil -*-
+%% ex: ft=erlang ts=4 sw=4 et
+
+%% Licensed under the Apache License, Version 2.0 (the "License"); you may not
+%% use this file except in compliance with the License. You may obtain a copy of
+%% the License at
+%%
+%% http://www.apache.org/licenses/LICENSE-2.0
+%%
+%% Unless required by applicable law or agreed to in writing, software
+%% distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+%% WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+%% License for the specific language governing permissions and limitations under
+%% the License.
+%%
+%%
+
+-export([main/1]).
+
+
+main([]) ->
+ JsFiles = ["share/server/json2.js",
+ "share/server/filter.js",
+ "share/server/mimeparse.js",
+ "share/server/render.js",
+ "share/server/state.js",
+ "share/server/util.js",
+ "share/server/validate.js",
+ "share/server/views.js",
+ "share/server/loop.js"],
+
+ CoffeeFiles = ["share/server/json2.js",
+ "share/server/filter.js",
+ "share/server/mimeparse.js",
+ "share/server/render.js",
+ "share/server/state.js",
+ "share/server/util.js",
+ "share/server/validate.js",
+ "share/server/views.js",
+ "share/server/coffee-script.js",
+ "share/server/loop.js"],
+
+
+ Concat = fun(Files, To) ->
+ AccBin = lists:foldl(fun(Path, Acc) ->
+ {ok, Bin} = file:read_file(Path),
+ [Bin | Acc]
+ end, [], Files),
+ FinalBin = iolist_to_binary(lists:reverse(AccBin)),
+ file:write_file(To, FinalBin)
+ end,
+
+ ok = Concat(JsFiles, "share/server/main.js"),
+ ok = Concat(CoffeeFiles, "share/server/main-coffee.js"),
+ ok.
Please sign in to comment.
Something went wrong with that request. Please try again.