This file is indexed.

/usr/bin/faust2caqtios is in faust 0.9.95~repack1-2.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
#!/bin/bash

#####################################################################
#                                                                   #
#               Compiles Faust programs to core audio-qt for ios    #
#               (c) Grame, 2016                                     #
#                                                                   #
#####################################################################

. /usr/share/faust/utils/faustpath
#. faustoptflags
CXXFLAGS="-O3 -ffast-math -ftree-vectorize -DIOS"

ARCHFILE="ca-qt.cpp"
ARCHLIB="-framework AudioToolbox -framework CoreMIDI -framework CoreFoundation "
PATH=$PATH:/usr/local/bin

function nqmakeios() {
	echo "#### qmake-ios is not available"
	echo "#### you must create an alias named 'qmake-ios' that points to the appropriate qmake in your Qt ios dist"
	exit 1
}
QMAKE=qmake-ios 
which $QMAKE > /dev/null || nqmakeios
DEBUG=false

#-------------------------------------------------------------------
# Analyze command arguments :
# faust options                 -> OPTIONS
# if -omp : -openmp or -fopenmp -> OPENMP
# existing *.dsp files          -> FILES
#

# PHASE 1 : Look for -icc option to force use of intel icc (actually icpc)
# without having to configure CXX and CXXFLAGS
for p in $@; do
	if [ "$p" = -icc ]; then
		# we ignore -icc when compiling for QT
		TOTO=""
		#CXX=icpc
		#CXXFLAGS='-Wfatal-errors -O3 -xT -ftz -fno-alias -fp-model fast=2'
    fi
done

#PHASE 2 : dispatch command arguments

OSCINC=""
QTDEFS=""
OSCLIB=""

for p in $@; do
    if [ $p = "-help" ] || [ $p = "-h" ]; then
        echo "faust2caqtios [-httpd] [-qrcode] [-poly] [-midi] [-osc] [-debug] <file.dsp>"
        echo "Use '-httpd' to activate HTTP control"
        echo "Use '-qrcode' to activate QR code generation"
        echo "Use '-poly' to produce a polyphonic DSP, ready to be used with MIDI events"
        echo "Use '-midi' to activate MIDI control"
        echo "Use '-osc' to activate OSC control"
        echo "Use '-debug' to print all the build steps"
    fi
    
    if [ "$p" = -omp ]; then
        if [[ $CXX == "icpc" ]]; then
            OMP="-openmp"
        else
            OMP="-fopenmp"
        fi
    fi
  
    if [ "$p" = -debug ]; then
    	DEBUG=true
    elif [ "$p" = -icc ]; then
    	ignore=" "
    elif [ $p = "-poly" ]; then
        POLYDEFS="DEFINES += POLY"
    elif [ $p = "-midi" ]; then
        MIDIDEFS="DEFINES += MIDICTRL"
    elif [ $p = "-osc" ]; then
		 OSCDEFS="DEFINES += OSCCTRL"
		 OSCLIBS="-lOSCFaust"
	elif [ "$p" = "-httpd" ]; then
		HTTPDEFS="DEFINES += HTTPCTRL"
		HTTPLIBS="-lHTTPDFaust -lmicrohttpd -lqrencode"
	elif [ "$p" = "-qrcode" ]; then # requires -httpd
		QRDEFS="DEFINES += QRCODECTRL"
    elif [ ${p:0:1} = "-" ]; then
	    OPTIONS="$OPTIONS $p"
	elif [[ -f "$p" ]]; then
	    FILES="$FILES $p"
	else
	    OPTIONS="$OPTIONS $p"        
	fi
done



#-------------------------------------------------------------------
# Check darwin specifics
#
if [[ $(uname) == Darwin ]]; then
    SYS_VERSION=$(uname -v | cut -d : -f1 | cut -d. -f1 | cut -d' ' -f4)
    CXXFLAGS+=" -D__MACOSX_CORE__"
	if [ $SYS_VERSION -gt 12 ]
	then
	    SPEC="-spec macx-clang"
	    CLANGOPT="CONFIG+=c++11"
	else
	    SPEC="-spec macx-g++"
	    CLANGOPT=""
	fi
    EXT=".app"
fi

#-------------------------------------------------------------------
# compile the *.dsp files
#
for p in $FILES; do

    CUR=$(pwd)
    f=$(basename "$p")
	SRCDIR=$(dirname "$p")

    # creates a temporary dir 
    TDR=$(mktemp -d faust.XXX)
	TMP="$TDR/${f%.dsp}"
    mkdir "$TMP"

    # compile faust to c++
	FAUST='faust -i -a $ARCHFILE $OPTIONS "$SRCDIR/$f" -o "$TMP/${f%.dsp}.cpp"'
	if $DEBUG; then echo $FAUST; fi
	eval $FAUST || exit

	IOSDIR=/usr/local/share/faust/iOS
	RSRC=$IOSDIR/*.png
	RFILES="RSRC.files=$(echo $RSRC)"

	PRJ='$QMAKE -project "QT += widgets printsupport network sensors" "CONFIG+=warn_off" "$CLANGOPT" "INCLUDEPATH+=$CUR" "INCLUDEPATH+=$FAUSTINC" "QMAKE_CXXFLAGS= $CXXFLAGS -Wno-unused-parameter   -I/usr/local/include/ $FAUSTTOOLSFLAGS" "LIBS+=$ARCHLIB $OSCLIBS $HTTPLIBS" "HEADERS+=$FAUSTINC/faust/gui/faustqt.h" "RESOURCES+= $FAUSTINC/faust/gui/Styles/Grey.qrc" "$OSCDEFS" "$HTTPDEFS" "$QRDEFS" "$POLYDEFS" "$MIDIDEFS" "$RFILES" "RSRC.path = ." "QMAKE_BUNDLE_DATA +=RSRC"'

	BUILD='$QMAKE -spec macx-xcode && xcodebuild -jobs 8 -project ${f%.dsp}.xcodeproj -target ${f%.dsp} -configuration Release'

    # compile c++ to binary
    if $DEBUG;
    then (
	    cd "$TMP"
    	echo $PRJ
    	eval $PRJ
    	echo $BUILD
    	eval $BUILD
    )
	else (
	    cd "$TMP"
    	eval $PRJ
    	eval $BUILD
    ) > /dev/null || exit
    fi

    rm -rf "$SRCDIR/${f%.dsp}$EXT"
    cp -r "$TMP/Release-iphoneos/${f%.dsp}$EXT" "$SRCDIR/${f%.dsp}$EXT"
    RMTMP=true
    if $DEBUG;
    then
	    echo "====> delete temporary folder $TDR ? [Y/n]"
	    read DEL
	    [ $DEL == "n" ] && RMTMP=false
	fi	
	[ $RMTMP == true ] && rm -rf "$TDR"

    # collect binary file name for FaustGIDE
    BINARIES="$BINARIES$SRCDIR/${f%.dsp}$EXT;"
done

echo $BINARIES