import Lake open Lake DSL package "ffi_test" where version := v!"0.1.0" lean_lib «FfiTest» where -- add library configuration options here @[default_target] lean_exe test where root := `Main target ffi.o pkg : FilePath := do let oFile := pkg.buildDir / "c" / "ffi.o" let srcJob ← inputTextFile <| pkg.dir / "c" / "ffi.cpp" let weakArgs := #["-I", (← getLeanIncludeDir).toString] buildO oFile srcJob weakArgs #["-fPIC"] "c++" getLeanTrace extern_lib libleanffi pkg := do let ffiO ← ffi.o.fetch let name := nameToStaticLib "leanffi" IO.println s!"{repr name}" buildStaticLib (pkg.nativeLibDir / name) #[ffiO]