Import("dev source_path setLuaEnv")

env, target, sources = dev.prepare_build(
    source_path, "core", source_glob="*.c", in_bin=False
)
env["SHLIBPREFIX"] = ""
env["CYGDLLPREFIX"] = ""

if dev.is_win32():
    env.Append(CPPDEFINES=['MIME_API="__declspec(dllexport)"'])
setLuaEnv(env)

ret = env.SharedLibrary(target, sources)

built_lib = dev.get_target(source_path, "core" + env["SHLIBSUFFIX"], in_bin=False)
target_lib = dev.get_target(source_path, "mime/core" + env["SHLIBSUFFIX"], in_bin=True)

env.Depends(target_lib, ret)
env.Command(target_lib, built_lib, Move("$TARGET", "$SOURCE"))

Return("ret")
