Translocation

This commit is contained in:
Graham Nelson 2019-03-10 23:46:11 +00:00
parent 75d26a1003
commit 8deee1569f
7 changed files with 419 additions and 374 deletions

View file

@ -83,7 +83,7 @@ pathname *Modules::find(web *W, module_search *ms, text_stream *name) {
pathname *tries[4];
tries[0] = W?(W->path_to_web):NULL;
tries[1] = Pathnames::up(tries[0]);
tries[2] = Pathnames::from_text(I"inweb");
tries[2] = path_to_inweb;
tries[3] = ms->path_to_search;
int N = 4;
for (int i=0; i<N; i++) {

View file

@ -100,16 +100,21 @@ void Makefiles::scan_makefile_line(text_stream *line, text_file_position *tfp, v
return;
@<Expand identity-settings@> =
WRITE("INWEB = "); Makefiles::pathname_slashed(OUT, path_to_inweb); WRITE("/Tangled/inweb\n");
pathname *path_to_intest = Pathnames::subfolder(Pathnames::up(path_to_inweb), I"intest");
WRITE("INTEST = "); Makefiles::pathname_slashed(OUT, path_to_intest); WRITE("/Tangled/intest\n");
WRITE("MYNAME = %S\n", Pathnames::directory_name(MS->for_web->path_to_web));
WRITE("ME = %p\n", MS->for_web->path_to_web);
WRITE("ME = "); Makefiles::pathname_slashed(OUT, MS->for_web->path_to_web);
WRITE("\n");
module *MW = MS->for_web->as_module;
module *X = FIRST_IN_LINKED_LIST(module, MW->dependencies);
if (X) {
WRITE("# which depends on:\n");
int N = 1;
LOOP_OVER_LINKED_LIST(X, module, MW->dependencies) {
WRITE("MODULE%d = %p\n", N, X->module_location);
N++;
WRITE("MODULE%d = ", N++);
Makefiles::pathname_slashed(OUT, X->module_location);
WRITE("\n");
}
}
MS->last_line_was_blank = FALSE;
@ -185,6 +190,18 @@ void Makefiles::scan_makefile_line(text_stream *line, text_file_position *tfp, v
WRITE("%S\n", line);
}
@ =
void Makefiles::pathname_slashed(OUTPUT_STREAM, pathname *P) {
TEMPORARY_TEXT(PT)
WRITE_TO(PT, "%p", P);
LOOP_THROUGH_TEXT(pos, PT) {
wchar_t c = Str::get(pos);
if (c == ' ') WRITE("\\ ");
else PUT(c);
}
DISCARD_TEXT(PT)
}
@ And finally, the following handles repetitions both of blocks and of spans:
=

View file

@ -6,6 +6,9 @@
# This is the Gnome version, by Philip Chimento
INTEST = intest/Tangled/intest
INWEB = inweb/Tangled/inweb
# First, the locations to which resources must be copied, inside the
# application. These pathnames mustn't contain spaces:

View file

@ -1,3 +1,6 @@
INTEST = intest/Tangled/intest
INWEB = inweb/Tangled/inweb
# First, the locations to which resources must be copied, inside the
# application. These pathnames mustn't contain spaces:

View file

@ -2,6 +2,9 @@
# This is the Windows version, by David Kinder. To use, you will need
# Cygwin with the Mingw-w64 GCC compiler installed.
INTEST = intest/Tangled/intest
INWEB = inweb/Tangled/inweb
BUILTINCOMPS = ../Build/Compilers
INTERNAL = ../Build/Internal
BUILTINHTML = ../Build/Documentation

File diff suppressed because it is too large Load diff

View file

@ -1,5 +1,5 @@
1 3K27 April 2006 First Perl version
4 5Z71 April 2009
4 5Z71 April 2009
The Web Planet 5 6H66 April 2011 Ported to C
The Zarbi 6 6L02 May 2014
Escape to Danger 7 *9Z99 31 December 9999 Unicode support