File: INSTALL.im

package info (click to toggle)
bobcat 2.08.01-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 5,668 kB
  • ctags: 953
  • sloc: cpp: 10,403; makefile: 9,042; perl: 401; sh: 195
file content (116 lines) | stat: -rw-r--r-- 4,110 bytes parent folder | download
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
    // About compiling the bobcat library on BSD/MacOSX:
    //
    // According to Karel Kubat (karel at e dash tunity dot com) the bobcat
    // library won't compile under BSD/MacOSX if the Linux options to create
    // the dynamic library are used. Instead of 
    //      -shared -Wl,-z,def,-soname,
    // Karel suggests to use:
    //      -dynamiclib -Wl,-single_module
    //
    // Also, he suggests to use the name libbobcat.dylib instead of
    // libbobcat.so.1 
    //
    // In the directory ./contrib the script c-conf is found which is provided
    // by Karel and which might be useful to construct the libraries under
    // BSD/MacOSX systems. Don't contact me if you experience any problems
    // with Karel's script. Instead, contact Karel directly.

//#define STATIC
    // When compiling Bobcat for CYGWIN under Windows, activate the above
    // #define: it will prevent the construction of the shared library (until
    // somebody tells me how to do that under CYGWIN....)

#define LIBRARIES
    // Install the libraries, remove if not requested

#define HEADERS
    // Install the headers, remove if not requested

#define MANPAGES
    // Install the manpages, remove if not requested

#define MANHTML
    // Install the html-versions of the manpages, remove if not requested

#define DOCOTHER
    // Install remaining docs (README, examples, etc), remove if not requested

#define LCGEN
    // Install the bobcatlcgen program


    // The following /bin/cp options are used to keep, rather than follow
    // symbolic references. If your installation doesn't support these flags,
    // then change them into available ones.
    //   -P, --no-dereference
    //            never follow symbolic links in SOURCE
    //   --preserve[=ATTR_LIST]
    //          preserve   the   specified   attributes   (default:  
    //          mode,ownership,timestamps), if possible  additional  
    //          attributes:  context, links, all
    //   -d     same as --no-dereference --preserve=links
#define CPOPTS  "-d"

    // The following icmake string variables are given their values below, in
    // the function `setLocations()'

string BASE;

    // BASE=is the directory below which ALL bisonc++ files will be stored.

    // For an operational non-Debian installation, you probably must be
    // `root', and BASE "/usr" or BASE "/usr/local" is suggested (see
    // below). `BASE' itself is not used outside of this file, so feel free to
    // define BIN, SKEL, MAN and DOC (below) in any which way you like.

string BIN;
    // The location of the binary program bobcatlcgen

string GPP;
    // GPP specifies the compiler to use. By defining GPP with a specific 
    // version (e.g., GPP=g++-4.1) that particular version can be used. The
    // distributed definition uses the `default' compiler version and uses 
    // `g++'. It is `gpp' in some installations. 

string DOC;
    // DOC is the directory in which all standard documentation will be stored
    // in this directory the non-development related information is stored. It
    // is not used if not defined (or defined empty)

string DOCDEV;
    // DOCDEV is the directory in which all other documentation will be stored
    // In this directory the development related information is stored

string INC;
    // the directory in which the header files will be stored

string GCC;
    // The compiler to use for bobcat's C-sources. See GPP above for
    // considerations

string LIB;
    // the directory in which the bobcat libraries will be stored

string MAN;
    // MAN is the directory in which the manual pages will be stored
    // They are stored below man3 and man7

string SHAREDOPT;
string SHAREDLIB;

void setLocations()
{
    BASE  = "/usr";

    BIN  =      BASE + "/bin";    
    DOC  =      BASE + "/share/doc/libbobcat2";
    DOCDEV  =   BASE + "/share/doc/libbobcat2-dev";
    INC  =      BASE + "/include/bobcat";
    LIB  =      BASE + "/lib";
    MAN  =      BASE + "/share/man";    

    GPP = "g++ --std=c++0x";
    GCC = "gcc";
//    GPP = "g++-4.5 --std=c++0x";
//    GCC = "gcc-4.5";
}