tomoyo: Use bin2c to generate builtin-policy.h
authorMichal Marek <mmarek@suse.cz>
Fri, 9 Jan 2015 13:08:26 +0000 (14:08 +0100)
committerMichal Marek <mmarek@suse.cz>
Tue, 7 Apr 2015 19:27:45 +0000 (21:27 +0200)
Simplify the Makefile by using a readily available tool instead of a
custom sed script. The downside is that builtin-policy.h becomes
unreadable for humans, but it is only a generated file.

Acked-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Michal Marek <mmarek@suse.cz>
security/tomoyo/Kconfig
security/tomoyo/Makefile

index 604e718..404dce6 100644 (file)
@@ -6,6 +6,7 @@ config SECURITY_TOMOYO
        select SECURITY_PATH
        select SECURITY_NETWORK
        select SRCU
+       select BUILD_BIN2C
        default n
        help
          This selects TOMOYO Linux, pathname-based access control.
index 56a0c7b..a6c02a5 100644 (file)
@@ -29,20 +29,20 @@ $(obj)/policy/stat.conf:
 $(obj)/builtin-policy.h: $(obj)/policy/profile.conf $(obj)/policy/exception_policy.conf $(obj)/policy/domain_policy.conf $(obj)/policy/manager.conf $(obj)/policy/stat.conf
        @echo Generating built-in policy for TOMOYO 2.5.x.
        @echo "static char tomoyo_builtin_profile[] __initdata =" > $@.tmp
-       @sed -e 's/\\/\\\\/g' -e 's/\"/\\"/g' -e 's/\(.*\)/"\1\\n"/' < $(obj)/policy/profile.conf >> $@.tmp
-       @echo "\"\";" >> $@.tmp
+       @$(objtree)/scripts/basic/bin2c < $(obj)/policy/profile.conf >> $@.tmp
+       @echo ";" >> $@.tmp
        @echo "static char tomoyo_builtin_exception_policy[] __initdata =" >> $@.tmp
-       @sed -e 's/\\/\\\\/g' -e 's/\"/\\"/g' -e 's/\(.*\)/"\1\\n"/' < $(obj)/policy/exception_policy.conf >> $@.tmp
-       @echo "\"\";" >> $@.tmp
+       @$(objtree)/scripts/basic/bin2c < $(obj)/policy/exception_policy.conf >> $@.tmp
+       @echo ";" >> $@.tmp
        @echo "static char tomoyo_builtin_domain_policy[] __initdata =" >> $@.tmp
-       @sed -e 's/\\/\\\\/g' -e 's/\"/\\"/g' -e 's/\(.*\)/"\1\\n"/' < $(obj)/policy/domain_policy.conf >> $@.tmp
-       @echo "\"\";" >> $@.tmp
+       @$(objtree)/scripts/basic/bin2c < $(obj)/policy/domain_policy.conf >> $@.tmp
+       @echo ";" >> $@.tmp
        @echo "static char tomoyo_builtin_manager[] __initdata =" >> $@.tmp
-       @sed -e 's/\\/\\\\/g' -e 's/\"/\\"/g' -e 's/\(.*\)/"\1\\n"/' < $(obj)/policy/manager.conf >> $@.tmp
-       @echo "\"\";" >> $@.tmp
+       @$(objtree)/scripts/basic/bin2c < $(obj)/policy/manager.conf >> $@.tmp
+       @echo ";" >> $@.tmp
        @echo "static char tomoyo_builtin_stat[] __initdata =" >> $@.tmp
-       @sed -e 's/\\/\\\\/g' -e 's/\"/\\"/g' -e 's/\(.*\)/"\1\\n"/' < $(obj)/policy/stat.conf >> $@.tmp
-       @echo "\"\";" >> $@.tmp
+       @$(objtree)/scripts/basic/bin2c < $(obj)/policy/stat.conf >> $@.tmp
+       @echo ";" >> $@.tmp
        @mv $@.tmp $@
 
 $(obj)/common.o: $(obj)/builtin-policy.h