aboutsummaryrefslogtreecommitdiff
path: root/lib/compilers/hylo.ts
blob: 01394701529e4f3971f7d92984ffbace95d2c2d8 (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
import {CompileChildLibraries} from '../../types/compilation/compilation.interfaces.js';
import type {ParseFiltersAndOutputOptions} from '../../types/features/filters.interfaces.js';
import {BaseCompiler} from '../base-compiler.js';

export class HyloCompiler extends BaseCompiler {
    static get key() {
        return 'hylo';
    }

    override getSharedLibraryPathsAsArguments(
        libraries: CompileChildLibraries[],
        libDownloadPath?: string,
        toolchainPath?: string,
    ) {
        return [];
    }

    override optionsForFilter(
        filters: ParseFiltersAndOutputOptions,
        outputFilename: string,
        userOptions?: string[],
    ): string[] {
        let options = ['-o', this.filename(outputFilename)];
        // Theres's no equivalent to non-intel asm.
        if (!filters.binary && !filters.binaryObject) options = options.concat('--emit', 'intel-asm');
        return options;
    }
}