package An official xmake package repository
https://xrepo.xmake.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
2.4 KiB
75 lines
2.4 KiB
set_project("theora") |
|
set_kind("$(kind)") |
|
|
|
add_rules("mode.debug", "mode.release") |
|
if is_plat("windows") and is_kind("shared") then |
|
add_rules("utils.symbols.export_all") |
|
end |
|
|
|
add_requires("libogg") |
|
|
|
add_packages("libogg") |
|
add_includedirs("include") |
|
add_headerfiles("include/(theora/*.h)") |
|
set_warnings("all") |
|
|
|
target("theoraenc") |
|
add_files("lib/apiwrapper.c", |
|
"lib/fragment.c", |
|
"lib/idct.c", |
|
"lib/internal.c", |
|
"lib/info.c", |
|
"lib/state.c", |
|
"lib/quant.c", |
|
"lib/analyze.c", |
|
"lib/encfrag.c", |
|
"lib/encapiwrapper.c", |
|
"lib/encinfo.c", |
|
"lib/encode.c", |
|
"lib/enquant.c", |
|
"lib/fdct.c", |
|
"lib/huffenc.c", |
|
"lib/mathops.c", |
|
"lib/mcenc.c", |
|
"lib/rate.c", |
|
"lib/tokenize.c") |
|
local asmdir = is_plat("windows") and "x86_vc" or "x86" |
|
if is_arch("x86") then |
|
add_defines("OC_X86_ASM") |
|
add_files(path.join("lib", asmdir, "*.c|sse2fdct.c")) |
|
elseif is_arch("x64", "x86_64") and not is_plat("windows") then |
|
add_defines("OC_X86_ASM", "OC_X86_64_ASM") |
|
add_files(path.join("lib", asmdir, "*.c")) |
|
end |
|
|
|
target("theoradec") |
|
add_files("lib/apiwrapper.c", |
|
"lib/bitpack.c", |
|
"lib/decapiwrapper.c", |
|
"lib/decinfo.c", |
|
"lib/decode.c", |
|
"lib/dequant.c", |
|
"lib/fragment.c", |
|
"lib/huffdec.c", |
|
"lib/idct.c", |
|
"lib/info.c", |
|
"lib/internal.c", |
|
"lib/quant.c", |
|
"lib/state.c") |
|
local asmdir = is_plat("windows") and "x86_vc" or "x86" |
|
if is_arch("x86") or (not is_plat("windows") and is_arch("x64", "x86_64")) then |
|
add_defines("OC_X86_ASM") |
|
add_files(path.join("lib", asmdir, "mmxidct.c"), |
|
path.join("lib", asmdir, "mmxfrag.c"), |
|
path.join("lib", asmdir, "mmxstate.c"), |
|
path.join("lib", asmdir, "x86state.c")) |
|
if os.exists("lib", asmdir, "sse2idct.c") then |
|
add_files("lib", asmdir, "sse2idct.c") |
|
end |
|
if os.exists(path.join("lib", asmdir, "x86cpu.c")) then |
|
add_files(path.join("lib", asmdir, "x86cpu.c")) |
|
end |
|
if is_arch("x64", "x86_64") then |
|
add_defines("OC_X86_64_ASM") |
|
end |
|
end
|
|
|