File: at-to-filelist

package info (click to toggle)
swiftlang 6.2.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,856,264 kB
  • sloc: cpp: 9,995,718; ansic: 2,234,019; asm: 1,092,167; python: 313,940; objc: 82,726; f90: 80,126; lisp: 38,373; pascal: 25,580; sh: 20,378; ml: 5,058; perl: 4,751; makefile: 4,725; awk: 3,535; javascript: 3,018; xml: 918; fortran: 664; cs: 573; ruby: 396
file content (35 lines) | stat: -rwxr-xr-x 999 bytes parent folder | download | duplicates (2)
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
#!/bin/bash

# Transform an @ file into a file list.
#
# The intended use case is given an @ path passed to swift, use this script and
# bash to automagically expand the @ path by transforming:
#
# @/foo/bar/baz.txt
#
#   =>
#
# <(at-to-filelist /foo/bar/baz.txt)
#
# For those unaware, <(...) causes bash to output the subshell's output into a
# file and then replace <(...) with the path to that temporary file.
#
# Example:
#
# Consider a swiftc command line that uses the @ symbol.
#
#   swiftc @/foo/bar/baz.txt
#
# When this is run, the @ command is expanded into a filelist in a temporary
# file. This doesn't work with -### since -### outputs the command line with a
# temporary file for the filelist, but uses a path to a temporary file that
# doesn't exist, e.g.:
#
#   swift -frontend -filelist /tmp/tmp.filelist ...
#
# To run this command, you use the at-to-filelist command as follows:
#
#   swift -frontend -filelist <(at-to-filelist /foo/bar/baz.txt)
cat ${1} | tr -s ";" "\n"

echo