blob: a07fbda385b62f569f8a55c0b3adab9a74c7fe2f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
STRUCTURE
VARIABLES
%% It would be nice to be able to include makefile in a way that
variables are restored.
@% I definitely need some naming convention for "global" variables.
Since I include potentially unknown makefiles (like library
dependecies) I cannot predict what they do. This is another
argument for variable framing.
Some ideas:
- Variables that start and end with '%' are considered global
and system. Subsystems may define such vars if there is
a real need. (Currently defined names should be documented
here. Each subsystem should document names that it defines.)
Subsystem should prefix each such var with its name (e.g. cxx_).
- Variables that contain '-' are considered 'functions' and not
framed. Generally subsystems should define those. The names
should be chosen carefully in order not to cause name clashes.
(Each subsystem should document names that it defines).
Subsystem should prefix each such function with its name
(e.g. cxx-).
- Variables that appear in %frame_exclude% are not framed. General
rule is to add only special one-word functions (usually defined
by base subsystem) that are used often and thus having one-word
terse name is very important; for example 'include' or 'import'
%% After the inclusion of dependency makefiles I cannot use src_base
becasue it was reset by the included file. So I am forced to use
src_root now which will hurt especially sore when I include from
sub-directories.
DEPENDENCIES : STRUCTURE
@@ It would be nice to be able to chose dependency type project-wise
and on a by-makefile basis. This could be tricky, however.
@@ Missing headers assumed generated with some inflexible logic (cur dir).
This can also vary among compilers (which is not something I would worry
too much as long as g++ works). Can I make it more reliable? Maybe capture
this (or essential) dependecies in a Makefile?
@@ Can I specify dependencies in CORBA projects manually. Do I want to do
that?
@@ Don't include dependecies when cleaning (configuring?).
MISC
@@ If I have generated idl files in src directory then build in some other
directory will fail or will use wrong headers.
%% .NOT_DEFAULT: target in make?
%@ configuration targets should not be parallel. try make -j 4 Maybe I can
detect that those files do not exist and disable parallelism for this
run. See .MUTEX bug (#3656).
@@ relative paths and pattern matching does not work very well together
|