see idk how to include the libraries and still make them Importable. And 
dumping the library sources into the project dir would kind of hamper source 
distribution…

> On Mar 28, 2017, at 7:36 PM, Michael Ilseman <milse...@apple.com> wrote:
> 
> This is into uncharted territory for me, but it seems you’re building with 
> SwiftPM. You’ll probably want to configure extra compiler flags if that’s 
> possible. You could also bite the bullet and build your C libraries with 
> SwiftPM as well. Hopefully someone on swift-build-dev can help you out.
> 
> CC-ing Ankit
> 
> 
>> On Mar 28, 2017, at 5:09 PM, Kelvin Ma <kelvinsthirt...@gmail.com> wrote:
>> 
>> How do I compile a project with many modules? My tree looks like this:
>> 
>> <Selection_001.png>
>> ​
>> 
>>> On Tue, Mar 28, 2017 at 12:47 PM, Michael Ilseman <milse...@apple.com> 
>>> wrote:
>>> Sure! In this example, I have built libgit2. I have a directory called Git, 
>>> and inside that I have the following module map:
>>> 
>>> module Git [system] {
>>>        header "<my path>/libgit2/include/git2.h"
>>>        export *
>>> }
>>> 
>>> When I run, I use:
>>> 
>>> swift -I <path-to-“Git”-directory> -L <path-to-built-libgit2> -lgit2 
>>> foo.swift
>>> 
>>> inside foo.swift I can:
>>> 
>>> import Git
>>> // … use libGit2
>>> 
>>> 
>>> Read more about how to write a more appropriate module.map file for your 
>>> purposes at https://clang.llvm.org/docs/Modules.html. For example, you 
>>> might be able to define link flags inside the module.map, use umbrella 
>>> directories, submodules, etc.
>>> 
>>> 
>>> 
>>>> On Mar 28, 2017, at 6:27 AM, Kelvin Ma <kelvinsthirt...@gmail.com> wrote:
>>>> 
>>>> Can you give an example?
>>>> 
>>>>> On Mon, Mar 27, 2017 at 3:59 PM, Michael Ilseman <milse...@apple.com> 
>>>>> wrote:
>>>>> Sure. At a low level, you can create a module.map file and use -L/-l 
>>>>> flags in your invocation of Swift. If you want to do so at a higher 
>>>>> level, then perhaps SwiftPM can. CCing swift-build-dev for the SwiftPM 
>>>>> part.
>>>>> 
>>>>> 
>>>>> > On Mar 26, 2017, at 3:20 PM, Kelvin Ma via swift-users 
>>>>> > <swift-users@swift.org> wrote:
>>>>> >
>>>>> > Idk if this has been asked before, but is there a way to import C 
>>>>> > libraries into a Swift project without creating a local git repo? 
>>>>> > Preferably something similar to C where you can just `#include` headers 
>>>>> > and then specify the link flags (in Package.swift?)
>>>>> >
>>>>> > It’s getting very cumbersome to make a bunch of empty git repos just to 
>>>>> > use libglfw or libcairo.
>>>>> > _______________________________________________
>>>>> > swift-users mailing list
>>>>> > swift-users@swift.org
>>>>> > https://lists.swift.org/mailman/listinfo/swift-users
>>>>> 
>>>> 
>>> 
>> 
> 
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users

Reply via email to