File: README

package info (click to toggle)
cpl-plugin-uves 6.1.3+dfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 23,128 kB
  • sloc: ansic: 171,056; sh: 4,359; python: 3,002; makefile: 1,322
file content (86 lines) | stat: -rw-r--r-- 2,511 bytes parent folder | download | duplicates (4)
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
How to install CFITSIO
   $ ./configure --prefix=/home/jmlarsen/BUILD/cfitsio/ && make shared && make install


How to build:

   $ ./bootstrap
   $ ./configure --prefix=/home/jmlarsen/BUILD/uves --enable-maintainer-mode CFLAGS='-W -Wall -std=c99 -pedantic -fno-common -Wundef -Wuninitialized -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Wsign-compare -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wmissing-format-attribute -Wnested-externs -Wdisabled-optimization -Wformat-y2k -Wmissing-noreturn -Wredundant-decls -Wvariadic-macros -Wold-style-definition -Wdeclaration-after-statement -Winit-self -Wmissing-include-dirs -Wvolatile-register-var -fgnu89-inline'
   $ make
   $ make install


After installation

   $ make check

to check that the installation is complete

   $ make html

builds the doxygen documentation


How to clean:

   $ make uninstall
   $ make clean
or
   $ make maintainer-clean



How to check for memory leaks:
   $ ./configure --enable-debug  (to turn on file + linenumber)
   $  LD_PRELOAD=/home/jmlarsen/BUILD/uves/lib/uves/plugins/uves-0.8.3/uves_response.so valgrind --leak-check=yes --show-reachable=yes --num-callers=50 esorex  uves_response  data/sof/blue/uves_response.sof




How to profile unit tests:
  > make clean 
  > ./configure --enable-static CFLAGS='-ftest-coverage -fprofile-arcs -g -pg' 
  > make
  > make LDFLAGS='-static' check
  > find `pwd` -type d | perl -nle 'chdir $_; system("gcov *.c");'

To profile [module]-test:
  > cd tests
  > [module]-test
  > gprof [module]-test

Coverage info:
  Study [module].c.gcov residing in the same directory as [module].c







How to profile a recipe:
    $ profile_build -j=3 -builddir=~/BUILD_PROF -esorexsrc=~/esorex-3.6.1 -iiinstrumentsrc=~/uvesp -cplsrc=~/cpl-3.1 -qfitssrc=~/qfits-6.2.0 -cfitsiosrc=~/cfitsio/ -iiinstrumentlib=flames,uves,cfitsio uves_mbias
    $ ~/BUILD_PROF/bin/esorex uves_mbias uves_mbias.sof
    $ gprof ~/BUILD_PROF/bin/esorex






Libraries are connected in this way:

 UVES-plugins  ---dyn.--->  libuves ---stat.---> IRPLIB
                                   
                              /\
                               |
                               |
                              dyn.
                               |
                               |

FLAMES-plugins  ---dyn.--->  libflames

(i.e. FLAMES knows about UVES but not the other way around). For each
dynamic link it is verified at runtime (i.e. linktime) that the
version numbers match.