aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2020-09-02 11:52:15 -0400
committerRalph Amissah <ralph.amissah@gmail.com>2020-10-19 13:41:43 -0400
commite1923108945cdf18ef7d910b7a7946164059c94f (patch)
tree084a84e2969b78f170ac512e2fceae9450add13e
parent0.11.1 (diff)
shell.nix
-rw-r--r--.gitignore11
-rwxr-xr-x[-rw-r--r--]dub.sdl15
-rw-r--r--dub.selections.json2
-rw-r--r--makefile14
-rw-r--r--org/spine_build_scaffold.org75
-rw-r--r--shell.nix19
6 files changed, 103 insertions, 33 deletions
diff --git a/.gitignore b/.gitignore
index 2dec148..734dcaf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,6 +15,7 @@
!*.d
!*.rb
!conf.sdl
+!shell.nix
!doc
!doc/**
!man
@@ -22,6 +23,12 @@
!org
!misc
!misc/**
+#!*.nix
+#!nix
+#!nix/**
+#!nix-devEnv
+#!nix-devEnv/**
+#!.envrc
!src
!src/**
!data
@@ -36,7 +43,8 @@
!**/*.ssm
!subprojects
!subprojects/*.wrap
-!subprojects/*.meson.build
+#!subprojects/*.meson.build
+#!subprojects/**
!pod.manifest
!sisu_document_make
!config_local_site
@@ -57,6 +65,7 @@ tmp/**
*_.d
*_.txt
*_
+*.swp
*~
\#*
*.\#*
diff --git a/dub.sdl b/dub.sdl
index 09d508f..3fc29da 100644..100755
--- a/dub.sdl
+++ b/dub.sdl
@@ -1,3 +1,4 @@
+#!/usr/bin/env dub
name "spine"
description "sisu document parser"
homepage "http://sisudoc.org"
@@ -17,11 +18,11 @@ dependency "dyaml" version="~>0.8.0" # https://code.dlan
dependency "tinyendian" version="~>0.2.0" # http://code.dlang.org/packages/tinyendian https://github.com/dlang-community/tinyendian // dyaml dependency
configuration "default" {
targetName "spine"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine'"
}
configuration "dmd" {
targetName "spine-dmd"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-dmd'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-dmd'"
}
buildType "dmd" {
dflags "-J=views" "-I=src/doc_reform"
@@ -36,11 +37,11 @@ configuration "dmd-version" {
dflags "-J=views" "-I=src/doc_reform"
buildOptions "verbose" "optimize"
targetName "spine-dmd-ver"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-dmd-ver'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-dmd-ver'"
}
configuration "ldc" {
targetName "spine-ldc"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-ldc'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-ldc'"
}
buildType "ldc" {
dflags "-O2" "-J=views" "-I=src/doc_reform"
@@ -60,11 +61,11 @@ configuration "ldc-version" {
dflags "-O2" "-J=views" "-I=src/doc_reform"
buildOptions "verbose" "optimize" "inline" "releaseMode"
targetName "spine-ldc-ver"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-ldc-ver'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-ldc-ver'"
}
configuration "gdc" {
targetName "spine-gdc"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-gdc'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-gdc'"
}
buildType "gdc" {
dflags "-O" "-J=views" "-I=src/doc_reform"
@@ -82,5 +83,5 @@ configuration "gdc-version" {
lflags "-lz"
buildOptions "verbose" "optimize" "inline" "releaseMode"
targetName "spine-gdc-ver"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-gdc-ver'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-gdc-ver'"
}
diff --git a/dub.selections.json b/dub.selections.json
index b4ef190..5e87b49 100644
--- a/dub.selections.json
+++ b/dub.selections.json
@@ -2,7 +2,7 @@
"fileVersion": 1,
"versions": {
"d2sqlite3": "0.18.3",
- "dyaml": "0.8.1",
+ "dyaml": "0.8.2",
"imageformats": "7.0.2",
"tinyendian": "0.2.0"
}
diff --git a/makefile b/makefile
index 60cb557..00b4e49 100644
--- a/makefile
+++ b/makefile
@@ -96,7 +96,7 @@ meson_clean_build_dir:
meson_build: meson_clean_build_dir
meson --buildtype=debugoptimized build
ninja -C build
- notify-send -t 0 'D meson build ldc compiled test release executable ready' 'spine'
+ #notify-send -t 0 'D meson build ldc compiled test release executable ready' 'spine'
meson_redo: meson_clean_build_dir meson_build
meson_project_build_clean: clean skel tangle dub_upgrade meson_build
meson: meson_clean_build_dir dub_upgrade meson_build
@@ -106,13 +106,13 @@ all_debug_ver: dmd_debug_ver gdc_debug_ver ldc_debug_ver
all_debug_clean_ver: clean tangle dmd_debug_ver gdc_debug_ver ldc_debug_ver
dmd: dub_upgrade
$(DUB) --compiler=dmd --config=dmd --build=release-nobounds
- notify-send -t 0 'D dmd compiled test release executable ready' 'spine-dmd'
+ #notify-send -t 0 'D dmd compiled test release executable ready' 'spine-dmd'
dmd_debug:
$(DUB) --compiler=dmd --config=dmd --build=debug
dmd_ver: dub_upgrade
$(DUB) --compiler=dmd --config=dmd-version
mv bin/spine-dmd-ver bin-archive/spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-dmd
- notify-send -t 0 'D dmd compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-dmd'
+ #notify-send -t 0 'D dmd compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-dmd'
dmd_clean_ver: clean tangle dmd_ver
dmd_rel: expunge skel tangle
$(DUB) --compiler=dmd --config=spine-release
@@ -123,13 +123,13 @@ dmd_debug_tangle: tangle
$(DUB) --compiler=dmd --config=spine-dmd-debug
gdc: dub_upgrade
$(DUB) --compiler=gdc --config=gdc
- notify-send -t 0 'D gdc compiled test release executable ready' 'spine-gdc'
+ #notify-send -t 0 'D gdc compiled test release executable ready' 'spine-gdc'
gdc_debug:
$(DUB) --compiler=gdc --config=gdc --build=debug
gdc_ver: dub_upgrade
$(DUB) --compiler=gdc --config=gdc-version
mv bin/spine-gdc-ver bin-archive/spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-gdc
- notify-send -t 0 'D gdc compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-gdc'
+ #notify-send -t 0 'D gdc compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-gdc'
gdc_clean_ver: clean tangle gdc_ver
gdc_rel: expunge skel tangle
$(DUB) --compiler=gdc --config=spine-release
@@ -140,13 +140,13 @@ gdc_debug_tangle: tangle
$(DUB) --compiler=gdc --config=spine-gdc-debug
ldc: dub_upgrade
$(DUB) --compiler=ldc2 --config=ldc --build=release
- notify-send -t 0 'D ldc compiled test release executable ready' 'spine-ldc'
+ #notify-send -t 0 'D ldc compiled test release executable ready' 'spine-ldc'
ldc_debug:
$(DUB) --compiler=ldc2 --config=ldc --build=debug
ldc_ver: dub_upgrade
$(DUB) --compiler=ldc2 --config=ldc-version
mv bin/spine-ldc-ver bin-archive/spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-ldc
- notify-send -t 0 'D ldc2 compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-ldc'
+ #notify-send -t 0 'D ldc2 compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-ldc'
ldc_clean_ver: clean tangle ldc_ver
ldc_rel: expunge skel tangle
$(DUB) --compiler=ldc2 --config=spine-release
diff --git a/org/spine_build_scaffold.org b/org/spine_build_scaffold.org
index a42cd69..f998647 100644
--- a/org/spine_build_scaffold.org
+++ b/org/spine_build_scaffold.org
@@ -282,7 +282,7 @@ meson_clean_build_dir:
meson_build: meson_clean_build_dir
meson --buildtype=debugoptimized build
ninja -C build
- notify-send -t 0 'D meson build ldc compiled test release executable ready' 'spine'
+ #notify-send -t 0 'D meson build ldc compiled test release executable ready' 'spine'
meson_redo: meson_clean_build_dir meson_build
meson_project_build_clean: clean skel tangle dub_upgrade meson_build
meson: meson_clean_build_dir dub_upgrade meson_build
@@ -320,7 +320,7 @@ all_debug_clean_ver: clean tangle dmd_debug_ver gdc_debug_ver ldc_debug_ver
#+BEGIN_SRC makefile
dmd: dub_upgrade
$(DUB) --compiler=dmd --config=dmd --build=release-nobounds
- notify-send -t 0 'D dmd compiled test release executable ready' 'spine-dmd'
+ #notify-send -t 0 'D dmd compiled test release executable ready' 'spine-dmd'
#+END_SRC
******** debug :debug:
@@ -340,7 +340,7 @@ dmd_debug:
dmd_ver: dub_upgrade
$(DUB) --compiler=dmd --config=dmd-version
mv bin/spine-dmd-ver bin-archive/spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-dmd
- notify-send -t 0 'D dmd compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-dmd'
+ #notify-send -t 0 'D dmd compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-dmd'
dmd_clean_ver: clean tangle dmd_ver
#+END_SRC
@@ -365,7 +365,7 @@ dmd_debug_tangle: tangle
#+BEGIN_SRC makefile
gdc: dub_upgrade
$(DUB) --compiler=gdc --config=gdc
- notify-send -t 0 'D gdc compiled test release executable ready' 'spine-gdc'
+ #notify-send -t 0 'D gdc compiled test release executable ready' 'spine-gdc'
#+END_SRC
******** debug :debug:
@@ -385,7 +385,7 @@ gdc_debug:
gdc_ver: dub_upgrade
$(DUB) --compiler=gdc --config=gdc-version
mv bin/spine-gdc-ver bin-archive/spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-gdc
- notify-send -t 0 'D gdc compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-gdc'
+ #notify-send -t 0 'D gdc compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-gdc'
gdc_clean_ver: clean tangle gdc_ver
#+END_SRC
@@ -410,7 +410,7 @@ gdc_debug_tangle: tangle
#+BEGIN_SRC makefile
ldc: dub_upgrade
$(DUB) --compiler=ldc2 --config=ldc --build=release
- notify-send -t 0 'D ldc compiled test release executable ready' 'spine-ldc'
+ #notify-send -t 0 'D ldc compiled test release executable ready' 'spine-ldc'
#+END_SRC
******** debug :debug:
@@ -430,7 +430,7 @@ ldc_debug:
ldc_ver: dub_upgrade
$(DUB) --compiler=ldc2 --config=ldc-version
mv bin/spine-ldc-ver bin-archive/spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-ldc
- notify-send -t 0 'D ldc2 compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-ldc'
+ #notify-send -t 0 'D ldc2 compiled test release executable ready' 'spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)-ldc'
ldc_clean_ver: clean tangle ldc_ver
#+END_SRC
@@ -966,7 +966,7 @@ gitsnapshot: distclean tangle
Every DUB package should contain a [[http://code.dlang.org/package-format?lang=json][dub.json]] (or [[http://code.dlang.org/package-format?lang=sdl][dub.sdl]])
** header (including dependencies) :header:
-#+BEGIN_SRC sh :tangle ../dub.sdl
+#+BEGIN_SRC sh :tangle ../dub.sdl :tangle-mode (identity #o755) :shebang #!/usr/bin/env dub
name "spine"
description "sisu document parser"
homepage "http://sisudoc.org"
@@ -995,7 +995,7 @@ time (dub --compiler=gdc --build=release)
#+BEGIN_SRC sh :tangle ../dub.sdl
configuration "default" {
targetName "spine"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine'"
}
#+END_SRC
@@ -1007,7 +1007,7 @@ time (dub --compiler=dmd --config=dmd --build=dmd-release)
#+BEGIN_SRC sh :tangle ../dub.sdl
configuration "dmd" {
targetName "spine-dmd"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-dmd'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-dmd'"
}
buildType "dmd" {
dflags "-J=views" "-I=src/doc_reform"
@@ -1022,7 +1022,7 @@ configuration "dmd-version" {
dflags "-J=views" "-I=src/doc_reform"
buildOptions "verbose" "optimize"
targetName "spine-dmd-ver"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-dmd-ver'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-dmd-ver'"
}
#+END_SRC
@@ -1038,7 +1038,7 @@ time (dub --compiler=ldc2 --config=ldc --build=ldc-release)
#+BEGIN_SRC sh :tangle ../dub.sdl
configuration "ldc" {
targetName "spine-ldc"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-ldc'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-ldc'"
}
buildType "ldc" {
dflags "-O2" "-J=views" "-I=src/doc_reform"
@@ -1058,7 +1058,7 @@ configuration "ldc-version" {
dflags "-O2" "-J=views" "-I=src/doc_reform"
buildOptions "verbose" "optimize" "inline" "releaseMode"
targetName "spine-ldc-ver"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-ldc-ver'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-ldc-ver'"
}
#+END_SRC
@@ -1070,7 +1070,7 @@ time (dub --compiler=gdc --config=gdc --build=gdc-release)
#+BEGIN_SRC sh :tangle ../dub.sdl
configuration "gdc" {
targetName "spine-gdc"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-gdc'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-gdc'"
}
buildType "gdc" {
dflags "-O" "-J=views" "-I=src/doc_reform"
@@ -1088,7 +1088,7 @@ configuration "gdc-version" {
lflags "-lz"
buildOptions "verbose" "optimize" "inline" "releaseMode"
targetName "spine-gdc-ver"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'spine-gdc-ver'"
+ #postGenerateCommands "notify-send -t 0 'D executable ready' 'spine-gdc-ver'"
}
#+END_SRC
@@ -1103,7 +1103,7 @@ configuration "build" {
targetName "bin/spine"
dflags "-J=views" "-I=src/doc_reform"
buildOptions "verbose" "releaseMode" "optimize" "inline"
- postGenerateCommands "/usr/bin/notify-send -t 0 'D release executable ready' 'spine'"
+ #postGenerateCommands "notify-send -t 0 'D release executable ready' 'spine'"
}
#+END_SRC
@@ -1506,6 +1506,38 @@ tinyendian_dep = declare_dependency(
)
#+END_SRC
+* nix
+
+#+BEGIN_SRC nix :tangle ../shell.nix
+{ pkgs ? import <nixpkgs> {} }:
+
+with pkgs;
+
+mkShell {
+ buildInputs = with pkgs; [
+ ninja dub
+ meson git
+ ldc #ldc dmd gdc
+ sqlite
+ validatePkgConfig
+ #gnumake gcc gdc cmake
+ #dzen2
+ ];
+ shellHook = ''
+ echo `ldc2 --version`
+ '';
+ COMPILER = "ldc2";
+}
+#+END_SRC
+
+#% ldc
+dub --compiler=ldc2 -color --config=ldc --build=release
+make ldc
+
+#% dmd
+dub --compiler=dmd -color --config=dmd --build=release
+make dmd
+
* .gitignore :gitignore:
#+BEGIN_SRC sh :tangle ../.gitignore
@@ -1526,6 +1558,7 @@ tinyendian_dep = declare_dependency(
!*.d
!*.rb
!conf.sdl
+!shell.nix
!doc
!doc/**
!man
@@ -1533,6 +1566,12 @@ tinyendian_dep = declare_dependency(
!org
!misc
!misc/**
+#!*.nix
+#!nix
+#!nix/**
+#!nix-devEnv
+#!nix-devEnv/**
+#!.envrc
!src
!src/**
!data
@@ -1547,7 +1586,8 @@ tinyendian_dep = declare_dependency(
!**/*.ssm
!subprojects
!subprojects/*.wrap
-!subprojects/*.meson.build
+#!subprojects/*.meson.build
+#!subprojects/**
!pod.manifest
!sisu_document_make
!config_local_site
@@ -1568,6 +1608,7 @@ tmp/**
*_.d
*_.txt
*_
+*.swp
*~
\#*
*.\#*
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 0000000..5b97ffe
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,19 @@
+{ pkgs ? import <nixpkgs> {} }:
+
+with pkgs;
+
+mkShell {
+ buildInputs = with pkgs; [
+ ninja dub
+ meson git
+ ldc #ldc dmd gdc
+ sqlite
+ validatePkgConfig
+ #gnumake gcc gdc cmake
+ #dzen2
+ ];
+ shellHook = ''
+ echo `ldc2 --version`
+ '';
+ COMPILER = "ldc2";
+}