.c and .cpp files use rules 'build_c' and 'build_cpp'. (Described in %TIZEN_STUDIO_DIR%\ide\Templates\native\ninja\rules.ninja)
I want to set rules for files with different extension, for example .m and .mm
This problem can be easily solved in Tizen IDE 2.4 by adding custom rules 'build_m' and 'build_mm':
rule build_S
# command = arm-linux-gnueabi-gcc -DNO_LEGACY -DGNUSTEP -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=700 -D__BSD_VISIBLE=1 -D_BSD_SOURCE=1 -DGC_DEBUG -DTYPE_DEPENDENT_DISPATCH -DTYPE_DEPENDENT_DISPATCH -c $in -o $out
command = i386-linux-gnueabi-gcc -D_DEBUG -DTYPE_DEPENDENT_DISPATCH -DGNUSTEP -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=500 -D__BSD_VISIBLE=1 -D_BSD_SOURCE=1 -c $in -o $out
# command = clang -D_DEBUG -DTYPE_DEPENDENT_DISPATCH -DGNUSTEP -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=500 -D__BSD_VISIBLE=1 -D_BSD_SOURCE=1 -no-integrated-as -c $in -o $out
description = Building S ($asmtool, $asmflags) $in -> $out
rule build_m
command = clang -MMD -MT $out -MF $out.d $pchInc -x objective-c -fobjc-runtime=gnustep-1.7 -fblocks $mflags -c $in -o $out
description = Building m ($ctool, $cflags, $mflags) $in -> $out
depfile = $out.d
deps = gcc
rule build_mm
command = clang++ -MMD -MT $out -MF $out.d $pchInc -x objective-c++ -fobjc-runtime=gnustep-1.7 -fblocks $mmflags -c $in -o $out
description = Building mm ($cpptool, $cppflags, $mmtool, $mmflags) $in -> $out
depfile = $out.d
deps = gcc
But in Tizen Studio 1.2 all unfamiliar file extensions are build with rule 'build_unsupported'. And I have to use it to build .mm:
rule build_unsupported
command = clang++ -MMD -MT $out -MF $out.d $pchInc -x objective-c++ -fobjc-runtime=gnustep-1.7 -fblocks $mmflags -c $in -o $out
description = Building mm ($cpptool, $cppflags, $mmtool, $mmflags) $in -> $out
depfile = $out.d
deps = gcc
How can I change that?