]> andersk Git - test.git/blob - Makefile.am
Initial version of code that allows users to interactively select from
[test.git] / Makefile.am
1 AM_CPPFLAGS          =
2 AM_CFLAGS            = -g -std=gnu99 -Wall
3 AM_LDFLAGS           = -g
4
5 noinst_LTLIBRARIES   = libhttp.la                                             \
6                        liblogging.la
7 noinst_DATA          = $(top_srcdir)/demo/demo.js
8 bin_PROGRAMS         = shellinaboxd
9 man_MANS             = shellinaboxd.1
10 noinst_HEADERS       = libhttp/http.h
11 dist_doc_DATA        = AUTHORS                                                \
12                        COPYING                                                \
13                        GPL-2                                                  \
14                        ChangeLog                                              \
15                        INSTALL                                                \
16                        NEWS                                                   \
17                        README                                                 \
18                        TODO                                                   \
19                        shellinabox/white-on-black.css
20 EXTRA_DIST           = demo/beep.wav                                          \
21                        demo/favicon.ico                                       \
22                        demo/demo.html                                         \
23                        demo/demo.js                                           \
24                        demo/demo.jspp                                         \
25                        demo/demo.xml                                          \
26                        demo/styles.css                                        \
27                        demo/vt100.js                                          \
28                        shellinabox/shellinaboxd.man.in                        \
29                        shellinabox/shell_in_a_box.js                          \
30                        shellinabox/vt100.js                                   \
31                        debian/README                                          \
32                        debian/changelog                                       \
33                        debian/compat                                          \
34                        debian/control                                         \
35                        debian/copyright                                       \
36                        debian/docs                                            \
37                        debian/rules                                           \
38                        debian/shellinabox.default                             \
39                        debian/shellinabox.dirs                                \
40                        debian/shellinabox.init                                \
41                        debian/shellinabox.install                             \
42                        debian/shellinabox.postinst                            \
43                        debian/shellinabox.postrm
44 LIBLOGGING_INCLUDES  = logging/logging.h                                      \
45                        config.h
46 liblogging_la_SOURCES= logging/logging.c                                      \
47                        $(LIBLOGGING_INCLUDES)
48 liblogging_la_LDFLAGS= -version 1:0:0
49
50 LIBHTTP_INCLUDES     = libhttp/hashmap.h                                      \
51                        libhttp/trie.h                                         \
52                        libhttp/httpconnection.h                               \
53                        libhttp/server.h                                       \
54                        libhttp/ssl.h                                          \
55                        libhttp/url.h                                          \
56                        config.h
57 libhttp_la_SOURCES   = libhttp/hashmap.c                                      \
58                        libhttp/trie.c                                         \
59                        libhttp/httpconnection.c                               \
60                        libhttp/server.c                                       \
61                        libhttp/ssl.c                                          \
62                        libhttp/url.c                                          \
63                        $(LIBHTTP_INCLUDES)                                    \
64                        libhttp/libhttp.sym
65 libhttp_la_LDFLAGS   = -export-symbols  $(top_srcdir)/libhttp/libhttp.sym     \
66                        -version 1:0:0
67
68 shellinaboxd_SOURCES = shellinabox/shellinaboxd.c                             \
69                        shellinabox/externalfile.c                             \
70                        shellinabox/externalfile.h                             \
71                        shellinabox/launcher.c                                 \
72                        shellinabox/launcher.h                                 \
73                        shellinabox/privileges.c                               \
74                        shellinabox/privileges.h                               \
75                        shellinabox/service.c                                  \
76                        shellinabox/service.h                                  \
77                        shellinabox/session.c                                  \
78                        shellinabox/session.h                                  \
79                        shellinabox/usercss.c                                  \
80                        shellinabox/usercss.h                                  \
81                        shellinabox/cgi_root.html                              \
82                        shellinabox/root_page.html                             \
83                        shellinabox/vt100.jspp                                 \
84                        shellinabox/shell_in_a_box.jspp                        \
85                        shellinabox/styles.css                                 \
86                        shellinabox/favicon.ico                                \
87                        shellinabox/beep.wav                                   \
88                        config.h
89 shellinaboxd_LDADD   = liblogging.la                                          \
90                        libhttp.la
91 shellinaboxd_LDFLAGS = -static
92
93 objcopyflags         = case "$(host_cpu)" in                                  \
94                          i[0-9]86) echo '-O elf32-i386 -B i386';;             \
95                          x86_64)   echo '-O elf64-x86-64 -B i386:x86-64';;    \
96                          arm*)     echo '-O elf32-littlearm -B arm';;         \
97                        esac
98
99 renamesymbols        =                                                        \
100   sed -e 's/\(.*\/\)\([^.]*\)\([.].*\)/\1\2\3=\2 /'                           \
101       -e 't0'                                                                 \
102       -e 's/\([^.]*\)\([.].*\)/\1\2=\1 /'                                     \
103       -e 't0'                                                                 \
104       -e 's/.*/&=& /'                                                         \
105       -e ':0'                                                                 \
106       -e 's/$$/aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ/'         \
107       -e ':1'                                                                 \
108       -e 's/\(=[^_]*\)_\([a-z]\)\([^ ]* .*\2\)\(.\)/\1\4\3\4/'                \
109       -e 't1'                                                                 \
110       -e 's/.\{53\}$$//'                                                      \
111       -e 's/[/.]/_/g'                                                         \
112       -e 's/^/--redefine-sym _binary_/'                                       \
113       -e 's/\([^=]*\)\(=[^ ]*\)/& \1_end\2End/'                               \
114       -e 's/\([^=]*\)\(=[^ ]*\)/& \1_start\2Start/'                           \
115       -e 's/[^ ]*\([^=]*\)=[^ ]*/-N\1_size/'
116
117 libtool: $(LIBTOOL_DEPS)
118         $(SHELL) ./config.status --recheck
119
120
121 ${top_srcdir}/demo/demo.js: ${top_srcdir}/demo/beep.wav                       \
122                             ${top_srcdir}/demo/demo.jspp                      \
123                             ${top_srcdir}/demo/favicon.ico                    \
124                             ${top_srcdir}/demo/styles.css                     \
125                             ${top_srcdir}/demo/vt100.js
126
127 ${top_srcdir}/demo/beep.wav: ${top_srcdir}/shellinabox/beep.wav
128         @rm -f "$@"
129         ln "$<" "$@"
130
131 ${top_srcdir}/demo/favicon.ico: ${top_srcdir}/shellinabox/favicon.ico
132         @rm -f "$@"
133         ln "$<" "$@"
134
135 ${top_srcdir}/demo/styles.css: ${top_srcdir}/shellinabox/styles.css
136         @rm -f "$@"
137         ln "$<" "$@"
138
139 ${top_srcdir}/demo/vt100.js: ${top_srcdir}/shellinabox/vt100.js
140         @rm -f "$@"
141         ln "$<" "$@"
142
143 shellinaboxd.1: shellinabox/shellinaboxd.man.in config.h
144         @src="${top_srcdir}/shellinabox/shellinaboxd.man.in";                 \
145         echo preprocess  "$$src" '>'"$@";                                     \
146         if [ `sed -e 's/^#define \([^ ]*\).*/\1/' -e t -e d config.h |        \
147              egrep 'HAVE_OPENSSL_BIO_H|HAVE_OPENSSL_ERR_H|HAVE_OPENSSL_SSL_H'|\
148              wc -l` -eq 3 ]; then                                             \
149           sed -e '/^#ifndef  *HAVE_OPENSSL$$/,/^#endif$$/d' "$$src";          \
150         else                                                                  \
151           sed -e '/^#ifdef  *HAVE_OPENSSL$$/,/^#endif$$/d' "$$src";           \
152         fi |                                                                  \
153         if sed -e 's/^#define \([^ ]*\).*/\1/' -e t -e d config.h |           \
154              grep 'HAVE_SECURITY_PAM_APPL_H' >/dev/null 2>&1; then            \
155           sed -e '/^#ifndef  *HAVE_PAM$$/,/^#endif$$/d';                      \
156         else                                                                  \
157           sed -e '/^#ifdef  *HAVE_PAM$$/,/^#endif$$/d';                       \
158         fi |                                                                  \
159         if [ -n "${DPKGBUILD}" ]; then                                        \
160           sed -e '/^#ifndef  *DPKGBUILD$$/,/^#endif$$/d';                     \
161         else                                                                  \
162           sed -e '/^#ifdef  *DPKGBUILD$$/,/^#endif$$/d';                      \
163         fi |                                                                  \
164         sed -e '/^#/d' >"$@"
165         @out=`echo "$@" 2>/dev/null|sed -e 's/\.[^.]*$$/.ps/'`;               \
166         man -Tps "./$@" >"$${out}" 2>/dev/null || rm -f "$${out}"
167
168 clean-local:
169         -rm -rf shellinaboxd.1                                                \
170                 shellinaboxd.ps
171         -rm -rf debian/shellinabox                                            \
172                 debian/shellinabox*.debhelper*                                \
173                 debian/shellinabox.substvars                                  \
174                 debian/tmp
175
176 .css.o:
177         @echo objcopy "$<" "$@"
178         @objcopy -I binary `$(objcopyflags)` `echo "$<" | $(renamesymbols)`   \
179           "$<" "$@"
180
181 .html.o:
182         @echo objcopy "$<" "$@"
183         @objcopy -I binary `$(objcopyflags)` `echo "$<" | $(renamesymbols)`   \
184           "$<" "$@"
185
186 .ico.o:
187         @echo objcopy "$<" "$@"
188         @objcopy -I binary `$(objcopyflags)` `echo "$<" | $(renamesymbols)`   \
189           "$<" "$@"
190
191 shellinabox/shell_in_a_box.o: shellinabox/shell_in_a_box.js config.h
192
193 .jspp.js:
194         @echo preprocess "$<" "$@"
195         @sed -e "`sed -e 's/^#define *\([^ ]*\) *\(.*\)/\/^[^#]\/s\/\1\/\2 \\\\\/* \1 *\\\\\/\/g/' \
196                      -e t                                                     \
197                      -e d "$<"`"                                              \
198              -e "s/^#/\/\/ #/"                                                \
199              -e "s/VERSION/\"@VERSION@ (revision @VCS_REVISION@)\"/g"         \
200              "$<" >"$@"
201
202 .js.o:
203         @echo objcopy "$<" "$@"
204         @objcopy -I binary `$(objcopyflags)` `echo "$<" | $(renamesymbols)`   \
205           "$<" "$@"
206
207 .wav.o:
208         @echo objcopy "$<" "$@"
209         @objcopy -I binary `$(objcopyflags)` `echo "$<" | $(renamesymbols)`   \
210           "$<" "$@"
211
This page took 0.376203 seconds and 5 git commands to generate.