Skip to content

Commit

Permalink
Handle the case where output-to is not in a subdir.
Browse files Browse the repository at this point in the history
Closes emezeske#4.
  • Loading branch information
Evan Mezeske committed Jan 10, 2012
1 parent 54f900c commit ff2c871
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 11 deletions.
8 changes: 4 additions & 4 deletions README.md
Expand Up @@ -16,14 +16,14 @@ your Clojure server-side project and your ClojureScript client-side project.

You can install the plugin via lein:

$ lein plugin install emezeske/lein-cljsbuild 0.0.3
$ lein plugin install emezeske/lein-cljsbuild 0.0.4

Or by adding lein-cljs to your `project.clj` file in the `:dev-dependencies`
section:

```clojure
(defproject lein-cljsbuild-example "1.2.3"
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.3"]])
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.4"]])
```

Make sure you pull down the jar file:
Expand All @@ -42,7 +42,7 @@ of your `project.clj` file. A simple project might look like this:

```clojure
(defproject lein-cljsbuild-example "1.2.3"
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.3"]]
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.4"]]
:cljsbuild {
; The path to the top-level ClojureScript source directory:
:source-path "src-cljs"
Expand Down Expand Up @@ -104,7 +104,7 @@ And your `project.clj` file looks like this:

```clojure
(defproject lein-cljsbuild-example "1.2.3"
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.3"]]
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.4"]]
:source-path "src-clj"
:cljsbuild {
:source-path "src-cljs"
Expand Down
4 changes: 2 additions & 2 deletions example-projects/advanced/project.clj
@@ -1,10 +1,10 @@
(defproject cljsbuild-example-advanced "0.0.3"
(defproject cljsbuild-example-advanced "0.0.4"
:description "An advanced example of how to use lein-cljsbuild"
:source-path "src-clj"
:dependencies [[org.clojure/clojure "1.3.0"]
[compojure "0.6.5"]
[hiccup "0.3.7"]]
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.3"]
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.4"]
[lein-ring "0.5.0"]]
:cljsbuild {:source-path "src-cljs"
:crossovers [example.crossover]
Expand Down
4 changes: 2 additions & 2 deletions example-projects/simple/project.clj
@@ -1,10 +1,10 @@
(defproject cljsbuild-example-simple "0.0.3"
(defproject cljsbuild-example-simple "0.0.4"
:description "A simple example of how to use lein-cljsbuild"
:source-path "src-clj"
:dependencies [[org.clojure/clojure "1.3.0"]
[compojure "0.6.5"]
[hiccup "0.3.7"]]
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.3"]
:dev-dependencies [[emezeske/lein-cljsbuild "0.0.4"]
[lein-ring "0.5.0"]]
:cljsbuild {:source-path "src-cljs"
:compiler {:output-to "resources/public/js/main.js"
Expand Down
2 changes: 1 addition & 1 deletion project.clj
@@ -1,4 +1,4 @@
(defproject emezeske/lein-cljsbuild "0.0.3"
(defproject emezeske/lein-cljsbuild "0.0.4"
:description "ClojureScript Autobuilder Plugin"
:url "http://github.com/emezeske/lein-cljsbuild"
:license {:name "Eclipse Public License - v 1.0"
Expand Down
6 changes: 4 additions & 2 deletions src/cljsbuild/core.clj
Expand Up @@ -26,10 +26,12 @@
(str (/ (double elapsed-us) 1000000000) " seconds"))))

(defn- compile-cljs [cljs-path compiler-options]
(let [output-file (:output-to compiler-options)]
(let [output-file (:output-to compiler-options)
output-dir (fs/dirname output-file)]
(print (str "Compiling " output-file " from " cljs-path "..."))
(flush)
(fs/mkdirs (fs/dirname output-file))
(when output-dir
(fs/mkdirs output-dir ))
(let [started-at (. System (nanoTime))]
(try
(cljsc/build cljs-path compiler-options)
Expand Down

0 comments on commit ff2c871

Please sign in to comment.