source: git/build_standards @ 45e35b

spielwiese
Last change on this file since 45e35b was cc336a, checked in by Mohamed Barakat <mohamed.barakat@…>, 13 years ago
THE BUILD STANDARDS, you missed the point to object
  • Property mode set to 100644
File size: 2.4 KB
Line 
1Main goal is to standarize the build process according to the GNU standards below:
2
31. compilation should work only using
4
5./configure
6make
7
82. Installation should work only using
9
10make install
11
12which will invoke make install recursively in each subdirectory and install to the directories dictated by the GNU standards
13
14So "make install" must be equivalent to "make install" in each subdirectory (*)
15
163. The standard for include files is
17
18#include <component/header.h>
19
20The location of the header file will be $includedir/Singular/module/header.h
21
22By default $includedir = /usr/local/include
23
244. 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
29e.g.
30
31/usr/lib/Singular/libfactory.a
32
33I words:
34a. It not allowed to require a "make install" in ANY subdirectory before compiling another subdirectory
35b. If you suggest to rename make to do make install then you will conflict with (*) and we will kill you sooner or later
36c. the (non-super) user should be able to run make successfully even if ./configure --prefix=/usr was used
37d. if the user already has run make successfully then make install must not touch or modify anything in the build-tree
38
39
40Here 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
Note: See TracBrowser for help on using the repository browser.