lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Hi there,

I've been playing around with Lake and have to say that I really like it. It took a few minutes to figure out how to pass additional flags to the compilation stage, until by chance I figured out it was as simple as adding flags = '<some flags>' to the target definition. But now I'm stuck:  I haven't been able to figure out how to specify a need on OSX to link to a framework, such as Carbon.framework.

I tried this:

CARBON_INCLUDE_DIR = "/System/Library/Frameworks/"
CARBON_LIBS = "Carbon.framework"

cpp.shared{
	"mymodule",
	src = "*.cpp",
	needs = {
		"carbon",
	}
}

But of course the result is:

g++ -c -O1 -Wall -I/usr/local/ -I/System/Library/Frameworks/   -fPIC -MMD  luaopen_mymodule.cpp
MACOSX_DEPLOYMENT_TARGET=10.3 g++ luaopen_mymodule.o  -lCarbon.framework   -bundle -undefined dynamic_lookup -o mymodule.so
ld: library not found for -lCarbon.framework

Somehow the linker needs to know that a dependency of XXX.framework should issue linker command -framework XXX

Is there a way to do this already?

Thanks


On Jan 5, 2012, at 3:51 AM, steve donovan wrote:

> Hi all,
> 
> This is a new release of Lake [1], which is a build tool written in
> and configurable using Lua.
> 
> It's now available through LuaRocks, so 'luarocks install lake' should
> Just Work.  (But otherwise it's just a single Lua file that just
> depends on LuaFileSystem)
> 
> I've updated the online documentation [2], and then there's also a new
> article which discusses some of the basic features and the philosophy
> behind Lake.[3]
> 
> steve d.
> 
> 1. https://github.com/stevedonovan/Lake
> 2. http://stevedonovan.github.com/lake/topics/index.md.html
> 3. http://steved-imaginaryreal.blogspot.com/2012/01/building-programs-with-lake.html
> 4. Yes, I _know_, 2.5Kloc is too big for a single file. I promise to
> do better this year.
>