Skip to content

Commit 7755a43

Browse files
authored
Merge pull request #1 from cgay/deft
I dub thee "Deft"
2 parents 292b7bf + 12f0297 commit 7755a43

36 files changed

+238
-259
lines changed

.github/workflows/build-and-test.yml

+7-7
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,17 @@ jobs:
4141
mkdir -p ${DYLAN}
4242
make install
4343
44-
- name: Exercise installed dylan-tool
44+
- name: Exercise deft
4545
env:
4646
DYLAN_CATALOG: ext/pacman-catalog
4747
DYLAN: dylan-root
4848
run: |
49-
dylan_exe="$(realpath ${DYLAN}/bin/dylan-tool-app)"
49+
exe="$(realpath ${DYLAN}/bin/deft-app)"
5050
export DYLAN_CATALOG="$(realpath ${DYLAN_CATALOG})"
51-
${dylan_exe} new library --force-package abc [email protected]
51+
${exe} new library --force-package abc [email protected]
5252
cd abc
53-
${dylan_exe} update
54-
${dylan_exe} status
55-
${dylan_exe} list
56-
${dylan_exe} build abc-test-suite
53+
${exe} update
54+
${exe} status
55+
${exe} list
56+
${exe} build abc-test-suite
5757
_build/bin/abc-test-suite

Makefile

+15-30
Original file line numberDiff line numberDiff line change
@@ -1,72 +1,57 @@
1-
# Low-tech Makefile to build and install dylan-tool.
2-
3-
# Building an executable for a library named "dylan" causes a conflict with the
4-
# base dylan library. I want this tool to be named "dylan" on the command line,
5-
# so it's necessary to use a makefile to build and then rename the executable
6-
# during the installation process.
7-
8-
# Because there's currently no way to make a static executable this gets
9-
# installed with the following directory structure:
10-
#
11-
# ${DYLAN}/install/dylan-tool/bin/dylan-tool # dylan-tool executable
12-
# ${DYLAN}/install/dylan-tool/lib/* # dylan-tool used libraries
13-
# ${DYLAN}/bin/dylan # symlink
14-
# -> ../install/dylan-tool/bin/dylan-tool # to here
15-
#
16-
# So just make sure ${DYLAN}/bin (or ${HOME}/dylan/bin, the default) is on your path.
1+
# Low-tech Makefile to build and install deft.
172

183
DYLAN ?= $${HOME}/dylan
19-
install_dir = $(DYLAN)/install/dylan-tool
4+
install_dir = $(DYLAN)/install/deft
205
install_bin = $(install_dir)/bin
216
install_lib = $(install_dir)/lib
22-
link_target = $(install_bin)/dylan-tool-app
7+
link_target = $(install_bin)/deft-app
238
link_source = $(DYLAN)/bin/dylan
249

2510
git_version := "$(shell git describe --tags --always --match 'v*')"
2611

27-
.PHONY: build build-with-version clean install install-debug really-install remove-dylan-tool-artifacts test dist distclean
12+
.PHONY: build build-with-version clean install install-debug really-install remove-deft-artifacts test dist distclean
2813

29-
build: remove-dylan-tool-artifacts
30-
OPEN_DYLAN_USER_REGISTRIES=${PWD}/registry dylan-compiler -build -unify dylan-tool-app
14+
build: remove-deft-artifacts
15+
OPEN_DYLAN_USER_REGISTRIES=${PWD}/registry dylan-compiler -build -unify deft-app
3116

3217
# Hack to add the version to the binary with git tag info. Don't want this to
3318
# be the normal build because it causes unnecessary rebuilds.
34-
build-with-version: remove-dylan-tool-artifacts
19+
build-with-version: remove-deft-artifacts
3520
file="sources/commands/utils.dylan"; \
3621
orig=$$(mktemp); \
3722
temp=$$(mktemp); \
3823
cp -p $${file} $${orig}; \
3924
cat $${file} | sed "s,/.__./.*/.__./,/*__*/ \"${git_version}\" /*__*/,g" > $${temp}; \
4025
mv $${temp} $${file}; \
4126
OPEN_DYLAN_USER_REGISTRIES=${PWD}/registry \
42-
dylan-compiler -build -unify dylan-tool-app; \
27+
dylan-compiler -build -unify deft-app; \
4328
cp -p $${orig} $${file}
4429

4530
really-install:
4631
mkdir -p $(DYLAN)/bin
47-
cp _build/sbin/dylan-tool-app $(DYLAN)/bin/
32+
cp _build/sbin/deft-app $(DYLAN)/bin/
4833

4934
install: build-with-version really-install
5035

5136
# Build and install without the version hacking above.
5237
install-debug: build really-install
5338

54-
# dylan-tool needs to be buildable with submodules so that it can be built on
39+
# Deft needs to be buildable with submodules so that it can be built on
5540
# new platforms without having to manually install deps.
5641
test: build
5742
OPEN_DYLAN_USER_REGISTRIES=${PWD}/registry \
58-
dylan-compiler -build dylan-tool-test-suite \
59-
&& DYLAN_CATALOG=ext/pacman-catalog _build/bin/dylan-tool-test-suite
43+
dylan-compiler -build deft-test-suite \
44+
&& DYLAN_CATALOG=ext/pacman-catalog _build/bin/deft-test-suite
6045

6146
dist: distclean install
6247

63-
# Sometimes I use dylan-tool to develop dylan-tool, so this makes sure to clean
48+
# Sometimes I use deft to develop deft, so this makes sure to clean
6449
# up its artifacts.
65-
remove-dylan-tool-artifacts:
50+
remove-deft-artifacts:
6651
rm -rf _packages
6752
find registry -not -path '*/generic/*' -type f -exec rm {} \;
6853

69-
clean: remove-dylan-tool-artifacts
54+
clean: remove-deft-artifacts
7055
rm -rf _build
7156
rm -rf _test
7257

README.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# Dylan Tool
1+
# Deft
22

3-
[![tests](https://github.com/dylan-lang/dylan-tool/actions/workflows/test.yaml/badge.svg)](https://github.com/dylan-lang/dylan-tool/actions/workflows/test.yaml)
4-
[![GitHub issues](https://img.shields.io/github/issues/dylan-lang/dylan-tool?color=blue)](https://github.com/dylan-lang/dylan-tool/issues)
3+
[![tests](https://github.com/dylan-lang/deft/actions/workflows/test.yml/badge.svg)](https://github.com/dylan-lang/deft/actions/workflows/test.yml)
4+
[![GitHub issues](https://img.shields.io/github/issues/dylan-lang/deft?color=blue)](https://github.com/dylan-lang/deft/issues)
55
[![Matrix](https://img.shields.io/matrix/dylan-lang-general:matrix.org?color=blue&label=Chat%20on%20Matrix&server_fqdn=matrix.org)](https://app.element.io/#/room/#dylan-language:matrix.org)
66

77
* Package management
@@ -10,13 +10,13 @@
1010
* No more Git submodules
1111
* Build/test from anywhere in your workspace
1212

13-
The `dylan` tool simplifies the management of Dylan workspaces and packages and
13+
Deft simplifies the management of Dylan workspaces and packages and
1414
provides a simplified interface to the Open Dylan compiler for building and
1515
(soon) testing, and generating documentation. It eliminates the need to manage
1616
library locations (registries) by hand and the need to use git submodules to
1717
track dependencies.
1818

19-
$ dylan new application hello
19+
$ deft new application hello
2020
Downloaded pacman-catalog@master to /tmp/dylan/_packages/pacman-catalog/master/src/
2121
Created library hello.
2222
Created library hello-test-suite.
@@ -29,7 +29,7 @@ track dependencies.
2929

3030
$ cd hello
3131

32-
$ dylan build --all
32+
$ deft build --all
3333
Open Dylan 2023.1
3434
Build of 'hello-test-suite' completed
3535
Build of 'hello-app' completed
@@ -45,9 +45,9 @@ repository. For any package to be downloadable it must have an entry in the
4545
catalog.
4646

4747
Full documentation is
48-
[here](https://opendylan.org/package/dylan-tool).
48+
[here](https://opendylan.org/package/deft).
4949

5050
## Bugs
5151

5252
If you have a feature request, think something should be designed differently, or find
53-
bugs, [file a bug report](https://github.com/dylan-lang/dylan-tool/issues).
53+
bugs, [file a bug report](https://github.com/dylan-lang/deft/issues).

documentation/source/conf.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
#
1313
import os
1414
import sys
15-
sys.path.insert(0, os.path.abspath('../../_packages/sphinx-extensions/current/src/sphinxcontrib'))
15+
sys.path.insert(0, os.path.abspath('../../ext/sphinx-extensions/sphinxcontrib'))
1616
import dylan.themes as dylan_themes
1717

1818

1919
# -- Project information -----------------------------------------------------
2020

21-
project = 'dylan-tool'
21+
project = 'deft'
2222
copyright = '2021, Dylan Hackers'
2323

2424

0 commit comments

Comments
 (0)