blob: 646d8b1bc936934efaefe564fefa6f0d614bdcf8 (
plain)
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
wrappedso_DATA = libapol_tcl.so.@libapol_version@
wrappedso_SONAME = $(wrappedso_DATA)
wrappedsodir = $(libdir)/setools/apol_tcl
package_SCRIPTS = pkgIndex.tcl
packagedir = $(wrappedsodir)
bin_SCRIPTS = apol
dist_noinst_DATA = apol_tcl.i apol_tcl.cc apol.png foo_module.tcl
BUILT_SOURCES = apol_tcl_wrap.cc mkIndex.tcl init.tcl
dist_setools_DATA = apol_help.txt domaintrans_help.txt file_relabel_help.txt \
infoflow_help.txt types_relation_help.txt \
perm_maps/apol_perm_mapping_ver12 \
perm_maps/apol_perm_mapping_ver15 \
perm_maps/apol_perm_mapping_ver16 \
perm_maps/apol_perm_mapping_ver17 \
perm_maps/apol_perm_mapping_ver18 \
perm_maps/apol_perm_mapping_ver19 \
perm_maps/apol_perm_mapping_ver20 \
perm_maps/apol_perm_mapping_ver21 \
perm_maps/apol_perm_mapping_ver22 \
perm_maps/apol_perm_mapping_ver23 \
perm_maps/apol_perm_mapping_ver24 \
apol.gif
EXTRA_DIST = \
analysis_tab.tcl \
classes_perms_tab.tcl \
common_widgets.tcl \
cond_bools_tab.tcl \
cond_rules_tab.tcl \
context_dialog.tcl \
context_selector.tcl \
directflow_module.tcl \
domaintrans_module.tcl \
file_contexts_tab.tcl \
find.tcl \
fscontexts_tab.tcl \
goto.tcl \
head.tcl \
initial_sids_tab.tcl \
level_dialog.tcl \
mls_tab.tcl \
netcontexts_tab.tcl \
open_policy_dialog.tcl \
perms_map.tcl \
policyconf.tcl \
progress_dialog.tcl \
range_dialog.tcl \
range_selector.tcl \
range_trans.tcl \
rbac_tab.tcl \
relabel_module.tcl \
roles_tab.tcl \
terules_tab.tcl \
transflow_module.tcl \
types_relation_module.tcl \
types_tab.tcl \
users_tab.tcl \
util.tcl \
top.tcl
# top.tcl must be last one written because it spawns the rest of the script
TCL_STRIP_FILES = $(patsubst %,$(srcdir)/%,$(filter-out head.tcl,$(EXTRA_DIST)))
DEPENDENCIES = $(top_builddir)/libqpol/src/libqpol.so \
$(top_builddir)/libapol/src/libapol.so \
$(top_builddir)/libsefs/src/libsefs.so \
$(top_builddir)/libqpol/swig/tcl/libtqpol.so \
$(top_builddir)/libapol/swig/tcl/libtapol.so \
$(top_builddir)/libsefs/swig/tcl/libtsefs.so \
$(top_builddir)/config.tcl
AM_CXXFLAGS = @DEBUGCXXFLAGS@ @WARNCXXFLAGS@ @PROFILECFLAGS@ @SELINUX_CFLAGS@ \
@SEFS_CFLAGS@ @APOL_CFLAGS@ @QPOL_CFLAGS@ -I$(top_builddir) -fpic \
-I$(top_srcdir)/libapol/include
AM_LDFLAGS = @DEBUGLDFLAGS@ @WARNLDFLAGS@ @PROFILELDFLAGS@ \
@SEFS_LIB_FLAG@ @APOL_LIB_FLAG@ @QPOL_LIB_FLAG@
apol_tcl_wrap.cc: apol_tcl.i $(DEPENDENCIES)
$(SWIG) -c++ $(SWIG_TCL_OPT) -pkgversion @libapol_version@ -o $@ \
-I$(top_srcdir)/libsefs/include -I$(top_srcdir)/libsefs/swig \
-I$(top_srcdir)/libapol/include -I$(top_srcdir)/libapol/swig \
-I$(top_srcdir)/libqpol/swig $<
$(wrappedso_DATA): apol_tcl.cc apol_tcl_wrap.cc
$(CXX) -shared -o $@ $^ $(AM_CXXFLAGS) $(CXXFLAGS) $(SWIG_TCL_CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -Wl,-soname,$(wrappedso_SONAME)
$(package_SCRIPTS): $(wrappedso_DATA) mkIndex.tcl
cat mkIndex.tcl | LD_LIBRARY_PATH=$(top_builddir)/libqpol/src:$(top_builddir)/libapol/src:$(top_builddir)/libsefs/src $(TCLSH_PROG)
$(mkdir_p) apol_tcl
cp $< $@ apol_tcl
mkIndex.tcl: $(wrappedso_DATA) Makefile
@echo "lappend auto_path $(top_builddir)/libapol/swig/tcl $(top_builddir)/libsefs/swig/tcl" > $@
@echo "package require apol" >> $@
@echo "package require sefs" >> $@
@echo "pkg_mkIndex . $<" >> $@
TCL_AUTOPATH = @TCL_AUTOPATH@
init.tcl: Makefile
@echo "proc tcl_config_init_libraries {} {" > $@
@echo " global auto_path" >> $@
@echo " lappend auto_path $(TCL_AUTOPATH)" >> $@
@echo " print_init \"Initializing libqpol... \"" >> $@
@echo " package require qpol @libqpol_version@" >> $@
@echo " print_init \"done.\nInitializing libapol... \"" >> $@
@echo " package require apol @libapol_version@" >> $@
@echo " print_init \"done.\nInitializing libsefs... \"" >> $@
@echo " package require sefs @libsefs_version@" >> $@
@echo " print_init \"done.\nInitializing libapol_tcl... \"" >> $@
@echo " package require apol_tcl @libapol_version@" >> $@
@echo " print_init \"done.\n\"" >> $@
@echo "}" >> $@
@echo "proc tcl_config_get_install_dir {} {" >> $@
@echo " return \"${setoolsdir}\"" >> $@
@echo "}" >> $@
$(bin_SCRIPTS): $(package_SCRIPTS) head.tcl init.tcl $(top_builddir)/config.tcl $(TCL_STRIP_FILES)
cat $(srcdir)/head.tcl init.tcl $(top_builddir)/config.tcl > $@
cat $(TCL_STRIP_FILES) | perl -p -i -e 's/^\s*(\#[^!]*){0,1}$$//s' >> $@
chmod u+x $@
%.tcl:
# do nothing
CLEANFILES = $(packages_SCRIPTS) $(bin_SCRIPTS) $(BUILT_SOURCES)
MOSTLYCLEANFILES = $(wrappedso_DATA) $(package_SCRIPTS) apol_tcl/$(wrappedso_DATA) apol_tcl/$(package_SCRIPTS)
|