1 | Main goal is to standarize the build process according to the GNU standards below: |
---|
2 | |
---|
3 | 1. compilation should work only using |
---|
4 | |
---|
5 | ./configure |
---|
6 | make |
---|
7 | |
---|
8 | 2. Installation should work only using |
---|
9 | |
---|
10 | make install |
---|
11 | |
---|
12 | which will invoke make install recursively in each subdirectory and install to the directories dictated by the GNU standards |
---|
13 | |
---|
14 | So "make install" must be equivalent to "make install" in each subdirectory (*) |
---|
15 | |
---|
16 | 3. The standard for include files is |
---|
17 | |
---|
18 | #include <component/header.h> |
---|
19 | |
---|
20 | The location of the header file will be $includedir/Singular/module/header.h |
---|
21 | |
---|
22 | By default $includedir = /usr/local/include |
---|
23 | |
---|
24 | 4. Static libraries used by other developers (e.g. Macaulay2 people using factory) |
---|
25 | will be part of the devel packages and installed according the GNU standard by default in |
---|
26 | |
---|
27 | /usr/lib/Singular/ |
---|
28 | |
---|
29 | e.g. |
---|
30 | |
---|
31 | /usr/lib/Singular/libfactory.a |
---|
32 | |
---|
33 | I words: |
---|
34 | a. It not allowed to require a "make install" in ANY subdirectory before compiling another subdirectory |
---|
35 | b. If you suggest to rename make to do make install then you will conflict with (*) and we will kill you sooner or later |
---|
36 | c. the (non-super) user should be able to run make successfully even if ./configure --prefix=/usr was used |
---|
37 | d. if the user already has run make successfully then make install must not touch or modify anything in the build-tree |
---|
38 | |
---|
39 | |
---|
40 | Here is part pf the dump of rpm -qil gtk2-devel: |
---|
41 | |
---|
42 | /usr/include/gtk-2.0/gtk/gtkwidget.h |
---|
43 | /usr/include/gtk-2.0/gtk/gtkwindow.h |
---|
44 | /usr/include/gtk-unix-print-2.0 |
---|
45 | /usr/include/gtk-unix-print-2.0/gtk |
---|
46 | /usr/include/gtk-unix-print-2.0/gtk/gtkpagesetupunixdialog.h |
---|
47 | /usr/include/gtk-unix-print-2.0/gtk/gtkprinter.h |
---|
48 | /usr/include/gtk-unix-print-2.0/gtk/gtkprintjob.h |
---|
49 | /usr/include/gtk-unix-print-2.0/gtk/gtkprintunixdialog.h |
---|
50 | /usr/include/gtk-unix-print-2.0/gtk/gtkunixprint.h |
---|
51 | /usr/lib64/gtk-2.0/include |
---|
52 | /usr/lib64/gtk-2.0/include/gdkconfig.h |
---|
53 | /usr/lib64/libgailutil.la |
---|
54 | /usr/lib64/libgailutil.so |
---|
55 | /usr/lib64/libgdk-x11-2.0.la |
---|
56 | /usr/lib64/libgdk-x11-2.0.so |
---|
57 | /usr/lib64/libgdk_pixbuf-2.0.la |
---|
58 | /usr/lib64/libgdk_pixbuf-2.0.so |
---|
59 | /usr/lib64/libgdk_pixbuf_xlib-2.0.la |
---|
60 | /usr/lib64/libgdk_pixbuf_xlib-2.0.so |
---|
61 | /usr/lib64/libgtk-x11-2.0.la |
---|
62 | /usr/lib64/libgtk-x11-2.0.so |
---|
63 | /usr/lib64/pkgconfig/gail.pc |
---|
64 | /usr/lib64/pkgconfig/gdk-2.0.pc |
---|
65 | /usr/lib64/pkgconfig/gdk-pixbuf-2.0.pc |
---|
66 | /usr/lib64/pkgconfig/gdk-pixbuf-xlib-2.0.pc |
---|
67 | /usr/lib64/pkgconfig/gdk-x11-2.0.pc |
---|
68 | /usr/lib64/pkgconfig/gtk+-2.0.pc |
---|
69 | /usr/lib64/pkgconfig/gtk+-unix-print-2.0.pc |
---|
70 | /usr/lib64/pkgconfig/gtk+-x11-2.0.pc |
---|
71 | /usr/share/aclocal/gtk-2.0.m4 |
---|
72 | /usr/share/gtk-2.0 |
---|
73 | /usr/share/gtk-2.0/demo |
---|