aboutsummaryrefslogtreecommitdiffstats
path: root/tutorial/chapter-8/qbs/imports/MyLibrary.qbs
blob: 947706dd48e0aedb48849d92ec8c8b4b038c6029 (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
// ![0]
Library {
    Depends { name: "cpp" }
    Depends { name: "mybuildconfig" }
    type: mybuildconfig.staticBuild ? "staticlibrary" : "dynamiclibrary"
    version: "1.0.0"
    install: !mybuildconfig.staticBuild || mybuildconfig.installStaticLib
    installDir: mybuildconfig.libInstallDir

    readonly property string _nameUpper : name.replace(" ", "_").toUpperCase()
    property string libraryMacro: _nameUpper + "_LIBRARY"
    property string staticLibraryMacro: _nameUpper + "_STATIC_LIBRARY"
    cpp.defines: mybuildconfig.staticBuild ? [staticLibraryMacro] : [libraryMacro]
    cpp.sonamePrefix: qbs.targetOS.contains("darwin") ? "@rpath" : undefined

    Export {
        Depends { name: "cpp" }
        cpp.includePaths: [exportingProduct.sourceDirectory]
        cpp.defines: exportingProduct.mybuildconfig.staticBuild
            ? [exportingProduct.staticLibraryMacro] : []
    }

    Depends { name: "bundle" }
    bundle.isBundle: false
}
// ![0]