diff options
author | Ralph Amissah <ralph.amissah@gmail.com> | 2020-10-28 09:38:33 -0400 |
---|---|---|
committer | Ralph Amissah <ralph.amissah@gmail.com> | 2020-11-09 14:29:49 -0500 |
commit | 5f62c5b7d84e4ab3fe2e48e799d16630c2b6f216 (patch) | |
tree | 41811554315437db55965422345b5cc5589a690c /org/spine_build_scaffold.org | |
parent | ldc current, ldc-1.24.0 available on nix 21.03 (diff) |
org tags
Diffstat (limited to 'org/spine_build_scaffold.org')
-rw-r--r-- | org/spine_build_scaffold.org | 307 |
1 files changed, 180 insertions, 127 deletions
diff --git a/org/spine_build_scaffold.org b/org/spine_build_scaffold.org index 8f89a4a..39c275f 100644 --- a/org/spine_build_scaffold.org +++ b/org/spine_build_scaffold.org @@ -1,7 +1,7 @@ -*- mode: org -*- #+TITLE: spine (doc_reform) (project) makefile #+DESCRIPTION: makefile for spine -#+FILETAGS: :spine:makefile: +#+FILETAGS: :spine:build:tools: #+AUTHOR: Ralph Amissah #+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]] #+COPYRIGHT: Copyright (C) 2015 - 2020 Ralph Amissah @@ -15,10 +15,63 @@ #+PROPERTY: header-args+ :cache no #+PROPERTY: header-args+ :padline no -[[./spine.org][spine.org]] [[../org/][org/]] -[[./spine_info.org][spine_info.org]] +[[./spine.org][spine.org]] VERSION +[[./spine_info.org][spine_info.org]] [[../org/][org/]] -* makefile :makefile: +* version info VERSION :version:set:project: +** project + +#+NAME: version_spine +#+BEGIN_SRC sh +0.11.1 +#+END_SRC + +** subprojects + +- d2sqlite3 + +#+NAME: version_d2sqlite3 +#+BEGIN_SRC sh +0.19.1 +#+END_SRC + +- imageformats + +#+NAME: version_imageformats +#+BEGIN_SRC sh +7.0.2 +#+END_SRC + +- dyaml + +#+NAME: version_dyaml +#+BEGIN_SRC sh +0.8.0 +#+END_SRC + +- tinyendian + +#+NAME: version_tinyendian +#+BEGIN_SRC sh +0.2.0 +#+END_SRC + +** build tools if specified + +- meson + +#+NAME: version_meson +#+BEGIN_SRC sh +0.46 +#+END_SRC + +- soversion + +#+NAME: version_soversion +0 +#+END_SRC + +* makefile :makefile: ** tangle #+BEGIN_SRC makefile :tangle ../makefile @@ -75,8 +128,8 @@ <<make_phony>> #+END_SRC -** settings [+2] :settings: -*** git version stamp :git:version: +** settings [+2] :settings: +*** git version stamp :git:version: #+NAME: make_set_var_0_git_version #+BEGIN_SRC makefile @@ -84,7 +137,7 @@ PROG_VER_GIT :=$(shell echo `git describe --long --tags | sed -e "s/^[ a-z_-]\+\ PROG_VER_DECLARED :=$(shell echo `cat ./views/version.txt | grep --color=never "enum" | sed 's/.\+(\([0-9]\+\),[ \t]\+\([0-9]\+\),[ \t]\+\([0-9]\+\)[ \t]*).\+/\1.\2.\3/g'`) #+END_SRC -*** dub (build tool) :dub: +*** dub (build tool) :dub: #+NAME: make_set_var_1_dub #+BEGIN_SRC makefile @@ -92,7 +145,7 @@ DUB=dub DUB_FLAGS=-v --force --compiler= #+END_SRC -*** Project Details :project:spine: +*** Project Details :project:spine: #+NAME: make_set_var_2_project_details #+BEGIN_SRC makefile @@ -106,7 +159,7 @@ PRG_BINDIR=./bin PRG_DOCDIR=./docs #+END_SRC -*** Emacs Org settings :settings:emacs:org:tangle: +*** Emacs Org settings :settings:emacs:org:tangle: #+NAME: make_set_var_3_emacs_org #+BEGIN_SRC makefile @@ -214,7 +267,7 @@ markup_dir_samples: find data/sisudir/media/text -name *.ss[tm] | sort #+END_SRC -** _make_ commands [+2] :make:commands: +** _make_ commands [+2] :make:commands: - build commands - build @@ -231,9 +284,9 @@ markup_dir_samples: - git snapshot - gitsnapshot -*** build commands [+1] :build:compile: -**** _dub_ build rebuild :dub: -***** all compiler builds :all:dmd:gdc:ldc: +*** build commands [+1] :build:compile: +**** _dub_ build rebuild :dub: +***** all compiler builds :all:dmd:gdc:ldc: ****** all builds ******* default @@ -248,29 +301,29 @@ dub_upgrade: default: ldc #+END_SRC -******* quick :quick: -******** default :default: +******* quick :quick: +******** default :default: #+NAME: make_compile_1_compiler_all #+BEGIN_SRC makefile all: dmd ldc gdc #+END_SRC -******** version :version: +******** version :version: #+NAME: make_compile_2_compiler_all_versioned #+BEGIN_SRC makefile all_ver: dmd_ver ldc_ver gdc_ver #+END_SRC -******** debug :debug: +******** debug :debug: #+NAME: make_compile_3_compiler_all_debug #+BEGIN_SRC makefile all_debug: dmd_debug gdc_debug ldc_debug #+END_SRC -******** _meson_ build :meson: +******** _meson_ build :meson: meson using dub - works & looks pretty clean @@ -289,22 +342,22 @@ meson_project_build_clean: clean skel tangle dub_upgrade meson_build meson: meson_clean_build_dir dub_upgrade meson_build #+END_SRC -******* clean & tangle :clean:tangle: -******** default :default: +******* clean & tangle :clean:tangle: +******** default :default: #+NAME: make_clean_tangle_compile_0_all_clean #+BEGIN_SRC makefile all_clean: clean tangle dmd ldc gdc #+END_SRC -******** version :version: +******** version :version: #+NAME: make_clean_tangle_compile_1_all_clean_versioned #+BEGIN_SRC makefile all_ver_clean: clean tangle dmd_ver ldc_ver gdc_ver #+END_SRC -******** debug :debug: +******** debug :debug: #+NAME: make_clean_tangle_compile_2_all_clean_debug #+BEGIN_SRC makefile @@ -312,10 +365,10 @@ 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 #+END_SRC -***** individual compiler builds :each: -****** dmd :dmd: -******* quick :quick: -******** default :default: +***** individual compiler builds :each: +****** dmd :dmd: +******* quick :quick: +******** default :default: #+NAME: make_dub_compile_dmd_0_default #+BEGIN_SRC makefile @@ -324,7 +377,7 @@ dmd: dub_upgrade notify-send -t 0 'D dmd compiled test release executable ready' 'spine-dmd' #+END_SRC -******** debug :debug: +******** debug :debug: #+NAME: make_dub_compile_dmd_1_debug #+BEGIN_SRC makefile @@ -332,7 +385,7 @@ dmd_debug: $(DUB) --compiler=dmd --config=dmd --build=debug #+END_SRC -******** version :version: +******** version :version: - assumes git tags with program version @@ -345,7 +398,7 @@ dmd_ver: dub_upgrade dmd_clean_ver: clean tangle dmd_ver #+END_SRC -******* clean & tangle :clean:tangle: +******* clean & tangle :clean:tangle: #+NAME: make_dub_compile_dmd_3_release #+BEGIN_SRC makefile @@ -358,9 +411,9 @@ dmd_debug_tangle: tangle $(DUB) --compiler=dmd --config=spine-dmd-debug #+END_SRC -****** gdc :gdc: -******* quick :quick: -******** default :default: +****** gdc :gdc: +******* quick :quick: +******** default :default: #+NAME: make_dub_compile_gdc_0_default #+BEGIN_SRC makefile @@ -369,7 +422,7 @@ gdc: dub_upgrade notify-send -t 0 'D gdc compiled test release executable ready' 'spine-gdc' #+END_SRC -******** debug :debug: +******** debug :debug: #+NAME: make_dub_compile_gdc_1_debug #+BEGIN_SRC makefile @@ -377,7 +430,7 @@ gdc_debug: $(DUB) --compiler=gdc --config=gdc --build=debug #+END_SRC -******** version :version: +******** version :version: - assumes git tags with program version @@ -390,7 +443,7 @@ gdc_ver: dub_upgrade gdc_clean_ver: clean tangle gdc_ver #+END_SRC -******* clean & tangle :clean:tangle: +******* clean & tangle :clean:tangle: #+NAME: make_dub_compile_gdc_3_release #+BEGIN_SRC makefile @@ -403,9 +456,9 @@ gdc_debug_tangle: tangle $(DUB) --compiler=gdc --config=spine-gdc-debug #+END_SRC -****** ldc :ldc: -******* quick :quick: -******** default :default: +****** ldc :ldc: +******* quick :quick: +******** default :default: #+NAME: make_dub_compile_ldc_0_default #+BEGIN_SRC makefile @@ -414,7 +467,7 @@ ldc: dub_upgrade notify-send -t 0 'D ldc compiled test release executable ready' 'spine-ldc' #+END_SRC -******** debug :debug: +******** debug :debug: #+NAME: make_dub_compile_ldc_1_debug #+BEGIN_SRC makefile @@ -422,7 +475,7 @@ ldc_debug: $(DUB) --compiler=ldc2 --config=ldc --build=debug #+END_SRC -******** version :version: +******** version :version: - assumes git tags with program version @@ -435,7 +488,7 @@ ldc_ver: dub_upgrade ldc_clean_ver: clean tangle ldc_ver #+END_SRC -******* clean & tangle :clean:tangle: +******* clean & tangle :clean:tangle: #+NAME: make_dub_compile_ldc_3_release #+BEGIN_SRC makefile @@ -449,7 +502,7 @@ ldc_debug_tangle: tangle #+END_SRC ***** generic -****** init clean distclean etc. :clean: +****** init clean distclean etc. :clean: #+NAME: make_initialization_operations_0_parts #+BEGIN_SRC makefile @@ -507,7 +560,7 @@ distclean_and_init: expunge mkdir -p $(PRG_BINDIR); #+END_SRC -****** version :version: +****** version :version: #+NAME: make_initialization_operations_1_git_version #+BEGIN_SRC makefile @@ -515,7 +568,7 @@ ver: echo spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT) #+END_SRC -****** tangle build rebuild :clean:tangle:build: +****** tangle build rebuild :clean:tangle:build: #+NAME: make_initialization_operations_2_assemble #+BEGIN_SRC makefile @@ -531,8 +584,8 @@ makefile_new: restart: clean tangle #+END_SRC -*** testrun (program against document markup) -**** pods +*** testrun (program against document markup) :markup:sample: +**** pods :pod: ****** find files #+NAME: make_project_testrun_0_find_pods @@ -731,7 +784,7 @@ ldc_testrun_paths_pod_all: $(SiSU_MARKUP_SAMPLES_POD) #+END_SRC -**** dir +**** dir :dir: ***** dmd ****** find files @@ -897,7 +950,7 @@ ldc_testrun_filelist_dir_all: $(SiSU_MARKUP_SAMPLES_DIR) #+END_SRC -*** org babel tangle batch process command :tangle: +*** org babel tangle batch process command :tangle: **** tangle: org babel tangle *.org #+NAME: make_tangle_0 @@ -922,7 +975,7 @@ tangle: skel (kill-buffer)) '($$ORGFILES)))" 2>&1 #+END_SRC -**** tangle maker: org babel tangle maker.org, makefile new +**** tangle maker: org babel tangle makefile new #+NAME: make_tangle_1 #+BEGIN_SRC makefile @@ -978,7 +1031,7 @@ gitsnapshot: distclean tangle git commit -a #+END_SRC -** phony :phony: +** phony :phony: #+NAME: make_phony #+BEGIN_SRC makefile @@ -987,17 +1040,17 @@ gitsnapshot: distclean tangle tangle gitsnapshot #+END_SRC -* dub.json TODO (subproject versions) :dub:json:config: +* dub.json :dub:config:json: ** dub.json -#+BEGIN_SRC sh :tangle ../dub.json +#+BEGIN_SRC json :tangle ../dub.json { "authors": [ "Ralph Amissah" ], "copyright": "Copyright © 2015 - 2020 Ralph Amissah", "name": "spine", - "version": "0.11.1", + "version": "<<version_spine>>", "description": "a sisu like document parser", "homepage": "http://sisudoc.org", "license": "AGPL-3.0+", @@ -1020,10 +1073,10 @@ gitsnapshot: distclean tangle } }, "dependencies": { - "d2sqlite3": "~>0.19.1", - "imageformats": "~>7.0.2", - "dyaml": "~>0.8.0", - "tinyendian": "~>0.2.0" + "d2sqlite3": "~><<version_d2sqlite3>>", + "imageformats": "~><<version_imageformats>>", + "dyaml": "~><<version_dyaml>>", + "tinyendian": "~><<version_tinyendian>>" }, "configurations": [ { @@ -1064,10 +1117,10 @@ gitsnapshot: distclean tangle "targetType": "executable", "platforms": [ "posix" ], "dependencies": { - "d2sqlite3": "~>0.19.1", - "imageformats": "~>7.0.2", - "dyaml": "~>0.8.0", - "tinyendian": "~>0.2.0" + "d2sqlite3": "~><<version_d2sqlite3>>", + "imageformats": "~><<version_imageformats>>", + "dyaml": "~><<version_dyaml>>", + "tinyendian": "~><<version_tinyendian>>" }, "subConfigurations": { "d2sqlite3": "all-included" @@ -1101,12 +1154,12 @@ gitsnapshot: distclean tangle } #+END_SRC -* dub.sdl :dub:sdl:config: +* dub.sdl :dub:config:sdl: 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]]) not configured here using dub.json for the moment -** header (including dependencies) :header: +** header (including dependencies) :header: #+BEGIN_SRC sh :NO-tangle ../dub.sdl :tangle-mode (identity #o755) :shebang #!/usr/bin/env dub name "spine" @@ -1121,11 +1174,11 @@ stringImportPaths "./views" buildRequirements "allowWarnings" targetType "executable" platforms "posix" -dependency "d2sqlite3" version="~>0.18.3" # https://code.dlang.org/packages/d2sqlite3 http://biozic.github.io/d2sqlite3/d2sqlite3 +dependency "d2sqlite3" version="~><<version_d2sqlite3>>" # https://code.dlang.org/packages/d2sqlite3 http://biozic.github.io/d2sqlite3/d2sqlite3 subconfiguration "d2sqlite3" "all-included" -dependency "imageformats" version="~>7.0.2" # https://code.dlang.org/packages/imageformats https://github.com/lgvz/imageformats -dependency "dyaml" version="~>0.8.0" # https://code.dlang.org/packages/dyaml https://github.com/dlang-community/D-YAML -dependency "tinyendian" version="~>0.2.0" # http://code.dlang.org/packages/tinyendian https://github.com/dlang-community/tinyendian // dyaml dependency +dependency "imageformats" version="~><<version_imageformats>>" # https://code.dlang.org/packages/imageformats https://github.com/lgvz/imageformats +dependency "dyaml" version="~><<version_dyaml>>" # https://code.dlang.org/packages/dyaml https://github.com/dlang-community/D-YAML +dependency "tinyendian" version="~><<version_tinyendian>>" # http://code.dlang.org/packages/tinyendian https://github.com/dlang-community/tinyendian // dyaml dependency #+END_SRC ** default @@ -1141,7 +1194,7 @@ configuration "default" { } #+END_SRC -** dmd +** dmd :dmd: time (dub --compiler=dmd -color --config=dmd --build=dmd) time (dub --compiler=dmd -color --config=dmd --build=dmd-release) @@ -1172,7 +1225,7 @@ configuration "dmd-version" { buildOptions "verbose" "optimize" "inline" // ok works takes ages to compile buildOptions "verbose" "releaseMode" "optimize" "inline" // broken, runtime errors -** ldc +** ldc :ldc: time (dub --compiler=ldc2 -color --config=ldc --build=ldc) time (dub --compiler=ldc2 -color --config=ldc --build=ldc-release) @@ -1204,7 +1257,7 @@ configuration "ldc-version" { } #+END_SRC -** gdc +** gdc :gdc: time (dub --compiler=gdc --config=gdc --build=gdc) time (dub --compiler=gdc --config=gdc --build=gdc-release) @@ -1234,8 +1287,8 @@ configuration "gdc-version" { } #+END_SRC -*** generic :generic: -**** build (sdp) :release: +*** generic :generic: +**** build (sdp) :release: #+BEGIN_SRC sh configuration "build" { @@ -1249,7 +1302,7 @@ configuration "build" { } #+END_SRC -* meson +* meson :meson:build: ** notes http://mesonbuild.com/D.html @@ -1272,7 +1325,7 @@ http://mesonbuild.com/Dependencies.html#Dub - flags DFLAGS= DC=ldc2 meson .. -*** projects +*** projects :project: ls -1 ./src/*/**/*.d tree -fi ./src |rg "\.d$" @@ -1283,13 +1336,13 @@ for i in spine_sources.txt; do; \ sed -i "s/\(.\+\.d$\)/ '\1',/g" $i; done && \ cat spine_sources.txt -**** project meson.build +**** project meson.build :filelist: #+BEGIN_SRC sh :tangle ../meson.build project('spine', 'd', license: 'AGPL-3', - version: '0.11.1', - meson_version: '>=0.46' + version: '<<version_spine>>', + meson_version: '>=<<version_meson>>' ) #if meson.get_compiler('d').get_id() == 'gcc' # error('spine cannot be compiled with GDC at time. Sorry.') @@ -1338,10 +1391,10 @@ spine_src = [ source_root = meson.source_root() src_dir = include_directories('src/') # Dependencies -dep_tinyendian = dependency('tinyendian', version: '>= 0.2.0', fallback: ['tinyendian', 'tinyendian_dep'], method: 'dub') -dep_dyaml = dependency('dyaml', version: '>= 0.8.0', fallback: ['dyaml', 'dyaml_dep'], method: 'dub') -dep_d2sqlite3 = dependency('d2sqlite3', version: '>= 0.18.3', fallback: ['d2sqlite3', 'd2sqlite3_dep'], method: 'dub') -dep_imageformats = dependency('imageformats', version: '>= 7.0.2', fallback: ['imageformats', 'imageformats_dep'], method: 'dub') +dep_tinyendian = dependency('tinyendian', version: '>= <<version_tinyendian>>', fallback: ['tinyendian', 'tinyendian_dep'], method: 'dub') +dep_dyaml = dependency('dyaml', version: '>= <<version_dyaml>>', fallback: ['dyaml', 'dyaml_dep'], method: 'dub') +dep_d2sqlite3 = dependency('d2sqlite3', version: '>= <<version_d2sqlite3>>', fallback: ['d2sqlite3', 'd2sqlite3_dep'], method: 'dub') +dep_imageformats = dependency('imageformats', version: '>= <<version_imageformats>>', fallback: ['imageformats', 'imageformats_dep'], method: 'dub') # Executable spine_exe = executable('spine', [spine_src], @@ -1357,7 +1410,7 @@ spine_exe = executable('spine', ) #+END_SRC -** meson subprojects [taken care of using dub] +** meson subprojects [taken care of using dub] :subprojects: *** README #+BEGIN_SRC txt :tangle ../subprojects/README @@ -1385,7 +1438,7 @@ spine_exe = executable('spine', - https://github.com/dlang-community/tinyendian.git #+END_SRC -*** d2sqlite3 +*** d2sqlite3 :d2sqlite3: **** wrap #+BEGIN_SRC sh :tangle ../subprojects/d2sqlite3.wrap @@ -1399,12 +1452,12 @@ revision = head #+BEGIN_SRC sh :NO-tangle ../subprojects/d2sqlite3.meson.build project('d2sqlite3', 'd', - meson_version: '>=0.46', + meson_version: '>=<<version_meson>>', license: 'BSL-1.0', - version: '0.18.3' + version: '<<version_d2sqlite3>>' ) -project_soversion = '0' +project_soversion = '<<version_soversion>>' src_dir = include_directories('source/') pkgc = import('pkgconfig') @@ -1448,7 +1501,7 @@ d2sqlite3_dep = declare_dependency( ) #+END_SRC -*** dyaml +*** dyaml :dyaml: **** wrap #+BEGIN_SRC sh :tangle ../subprojects/dyaml.wrap @@ -1464,12 +1517,12 @@ Upstream provides meson.build #+BEGIN_SRC sh :NO-tangle ../subprojects/D-YAML/meson.build project('D-YAML', 'd', - meson_version: '>=0.40.0', + meson_version: '>=<<version_meson>>', subproject_dir: 'contrib', - version: '0.8.0' + version: '<<version_dyaml>>' ) -project_soversion = '0' +project_soversion = '<<version_soversion>>' src_dir = include_directories('source/') pkgc = import('pkgconfig') @@ -1510,7 +1563,7 @@ dyaml_src = [ ] install_subdir('source/dyaml', install_dir: 'include/d/yaml/') -tinyendian_dep = dependency('tinyendian', version: '>=0.2.0', fallback: ['tinyendian', 'tinyendian_dep']) +tinyendian_dep = dependency('tinyendian', version: '>=<<version_tinyendian>>', fallback: ['tinyendian', 'tinyendian_dep']) dyaml_lib = library('dyaml', [dyaml_src], @@ -1535,7 +1588,7 @@ dyaml_dep = declare_dependency( ) #+END_SRC -*** imageformats +*** imageformats :imageformats: **** wrap #+BEGIN_SRC sh :tangle ../subprojects/imageformats.wrap @@ -1549,12 +1602,12 @@ revision = head #+BEGIN_SRC sh :NO-tangle ../subprojects/imageformats.meson.build project('imageformats', 'd', - meson_version: '>=0.46', + meson_version: '>=<<version_meson>>', license: 'BSL-1.0', - version: '7.0.2' + version: '<<version_imageformats>>' ) -project_soversion = '0' +project_soversion = '<<version_soversion>>' src_dir = include_directories('.') pkgc = import('pkgconfig') @@ -1590,7 +1643,7 @@ imageformats_dep = declare_dependency( ) #+END_SRC -*** tinyendian (dyaml dependency) +*** tinyendian (dyaml dependency) :tinyendian: **** wrap #+BEGIN_SRC sh :tangle ../subprojects/tinyendian.wrap @@ -1610,8 +1663,8 @@ Upstream provides meson.build project( 'tinyendian', 'd', - meson_version: '>=0.41', - version: '0.2.0', + meson_version: '>=<<version_meson>>', + version: '<<version_tinyendian>>', default_options: ['buildtype=release'], ) @@ -1648,13 +1701,13 @@ tinyendian_dep = declare_dependency( ) #+END_SRC -* nix +* nix :nix: - default.nix - shell.nix - dub2.nix -** dub2nix notes (from author (Lionello Lunesu) email reply, 2020-10-12) +** dub2nix notes (from author (Lionello Lunesu) email reply, 2020-10-12) NOTE - https://github.com/lionello/dub2nix @@ -1691,7 +1744,7 @@ in mkShell { "license": "AGPL-3", "name": "d2sqlite3_dub2nix", "dependencies": { - "d2sqlite3": "~>0.19.1" + "d2sqlite3": "~><<version_d2sqlite3>>" }, "subConfigurations": { "d2sqlite3": "with-lib" @@ -1725,7 +1778,7 @@ make modificatons if desired - run: nix-build -** envrc +** envrc :envrc: #+BEGIN_SRC nix :tangle ../.envrc if type lorri &>/dev/null; then @@ -1743,8 +1796,8 @@ if [ -e .envrc-local ]; then fi #+END_SRC -** shells shell.nix -*** dmd shell +** shells shell.nix :shell: +*** dmd shell :dmd: - ln -sf nixDevEnv/shells/shell-dmd-verNix.nix shell.nix - ln -sf nixDevEnv/shells/shell-dmd-verUser.nix shell.nix @@ -1783,7 +1836,7 @@ in pkgs.mkShell { } #+END_SRC -*** ldc shell +*** ldc shell :ldc: - ln -sf nixDevEnv/shells/shell-ldc-verNix.nix shell.nix - ln -sf nixDevEnv/shells/shell-ldc-verUser.nix shell.nix @@ -1839,7 +1892,7 @@ dub2nix-src = fetchTarball { dub2nix = (import dub2nix-src) { inherit pkgs; }; #+END_SRC -**** overlays +**** overlays :overlays: #+NAME: nix_shell_overlay_none #+BEGIN_SRC nix @@ -1900,7 +1953,7 @@ buildInputs = with pkgs; [ ]; #+END_SRC -*** shell with dmd & ldc +*** shell with dmd & ldc :shell: #+NAME: nix_shell_with_compilers_dmd_and_ldc #+BEGIN_SRC nix @@ -1928,7 +1981,7 @@ in pkgs.mkShell { } #+END_SRC -*** dub2nix version +*** dub2nix version :dub2nix: #+BEGIN_SRC nix dub2nix-src = fetchTarball { @@ -1937,7 +1990,7 @@ in pkgs.mkShell { }; #+END_SRC -** default.nix +** default.nix :default: #+BEGIN_SRC txt :tangle ../default.nix <<nix_project>> @@ -1955,7 +2008,7 @@ in pkgs.mkShell { with import ./mkDub.nix { inherit pkgs; }; mkDubDerivation rec { name = "spine-${version}"; - version = "0.11.1"; + version = "<<version_spine>>"; src = ./.; buildInputs = [ pkgs.sqlite ]; meta = with stdenv.lib; { @@ -1968,7 +2021,7 @@ mkDubDerivation rec { } #+END_SRC -** mkDub.nix TODO +** mkDub.nix :mkDub: Get current mkDub.nix from the dub2nix project: @@ -2102,7 +2155,7 @@ in { } #+END_SRC -*** mkDub ldc +*** mkDub ldc HACK #+BEGIN_SRC nix :tangle ../nixDevEnv/dub/mkDub-ldc.nix { pkgs ? import <nixpkgs> {}, @@ -2232,9 +2285,9 @@ in { } #+END_SRC -** overlays +** overlays :overlay: *** compilers (latest versions) [version information set elsewhere] -**** ldcVersion.nix overlay +**** ldcVersion.nix overlay :ldc:version: #+BEGIN_SRC nix :tangle ../nixDevEnv/overlays/ldcVersion.nix self: super: rec { @@ -2254,7 +2307,7 @@ self: super: rec { } #+END_SRC -**** dmdVersion.nix overlay +**** dmdVersion.nix overlay HACK :dmd:version: no working overlay, tangle to work on @@ -2276,16 +2329,16 @@ self: super: rec { } #+END_SRC -** version info TODO +** version info REVIEW :version: - https://dlang.org/download.html -*** compilers (set latest versions) TODO -**** ldc +*** compilers (set latest versions) :compiler:version: +**** ldc VERSION :version:set:ldc: - https://github.com/ldc-developers/ldc/releases -***** 1.24.0 +***** 1.24.0 HACK - https://github.com/ldc-developers/ldc/releases/tag/v1.24.0 - nix-prefetch-url https://github.com/ldc-developers/ldc/releases/download/v1.24.0/ldc-1.24.0-src.tar.gz @@ -2309,7 +2362,7 @@ version = "1.23.0"; sha256 = "1fdgj222x29as466vdxy9c0m82zzlsb7vnvvh89n2riszcrx463d"; #+END_SRC -**** dmd +**** dmd :dmd: https://dlang.org/changelog/index.html https://dlang.org/changelog/pending.html http://downloads.dlang.org/releases/ @@ -2322,7 +2375,7 @@ sha256 = "0xhm8m46ahfx3hcibi3vws02zaplny3226f3x8cd8584gzfqyzxp"; year = "2020"; #+END_SRC -* .gitignore :gitignore: +* .gitignore :gitignore: #+BEGIN_SRC sh :tangle ../.gitignore # git ls-files --others --exclude-from=.git/info/exclude @@ -2399,7 +2452,7 @@ tmp/** #.reggae/** #+END_SRC -* sh script to batch process _emacs org babel tangle_ :shell_script:tangle: +* sh script to batch process _emacs org babel tangle_ :shell_script:tangle: [[http://orgmode.org/manual/Batch-execution.html]] creates a shell batch script called "tangle", that will tangle (emacs org babel tangle) org files in ./org/ to create .d source files in ./src/doc_reform/ @@ -2471,20 +2524,20 @@ time make tangle ldc time make ldc_testrun_find_pod_epub #+END_SRC -** dub zfunc :zfunc: -*** ,dubdmd :dmd: +** dub zfunc :zfunc: +*** ,dubdmd :dmd: #+BEGIN_SRC sh :tangle no time dub --compiler=dmd -v --force #+END_SRC -*** ,dubldc :ldc: +*** ,dubldc :ldc: #+BEGIN_SRC sh :tangle no time dub --compiler=ldc2 -v --force #+END_SRC -*** ,dubgdc :gdc: +*** ,dubgdc :gdc: #+BEGIN_SRC sh :tangle no time dub --compiler=gdc -v --force @@ -2545,7 +2598,7 @@ time make ldc_testrun_filelist_dir_pod [[http://wiki.dlang.org/Compilers][D Compilers wiki https://wiki.dlang.org/Compilers]] [[http://dlang.org/download.html][D Compilers download http://dlang.org/download.html]] -*** dub :dub: +*** dub :dub: https://github.com/dlang/dub/ http://code.dlang.org/getting_started |