Blame pemagine.lzy

feffc7
lz_project_rules()
feffc7
{
feffc7
	lz_rules="all install xstatic install_xstatic"
feffc7
}
feffc7
feffc7
lz_project_definitions()
feffc7
{
feffc7
	pemagine_lib_name=libpemagine
feffc7
	pemagine_so_name="$lz_build_dir/lib/$pemagine_lib_name$lz_dylib_ext"
feffc7
	pemagine_a_name="$lz_build_dir/lib/$pemagine_lib_name$lz_stlib_ext"
feffc7
	pemagine_so_def_name="$lz_build_dir/lib/$pemagine_lib_name$lz_libdef_ext"
feffc7
	pemagine_implib_name="$lz_build_dir/lib/$pemagine_lib_name$lz_implib_ext"
feffc7
feffc7
	lz_cflags_common="-DMIDIPIX_FREESTANDING
feffc7
			-D__NT$lz_arch_bits \
feffc7
			-UWIN32 -U_WIN32 -U__WIN32 -U__WIN32__ \
feffc7
			-UWIN64 -U_WIN64 -U__WIN64 -U__WIN64__ \
feffc7
			-Werror=all -fno-builtin -ffreestanding"
feffc7
feffc7
feffc7
	# lz_cflags_extra="-Os -fno-stack-protector -fomit-frame-pointer -fno-unwind-tables -fno-asynchronous-unwind-tables"
feffc7
feffc7
	pemagine_so_ldflags="-shared --image-base=0x560000 \
feffc7
				--entry "$lz_default_underscore"pe_lib_entry_point@12 \
feffc7
				--exclude-all-symbols \
feffc7
				--output-def $pemagine_so_def_name \
feffc7
				--out-implib $pemagine_implib_name \
feffc7
				--subsystem=windows"
feffc7
feffc7
	lz_cflags_include_common="-I$lz_project_dir/src/internal -I$lz_project_dir/include"
feffc7
feffc7
	if [ "$MIDIPIX_ROOT"x != x ]; then
feffc7
		lz_cflags_include_common="$lz_cflags_include_common -I$MIDIPIX_ROOT/include"
feffc7
	fi
feffc7
feffc7
	pemagine_so_obj_list=pemagine.so.objs
feffc7
	pemagine_so_src_list=pemagine.so.src.lst
feffc7
feffc7
	pemagine_a_obj_list=pemagine.a.objs
feffc7
	pemagine_a_src_list=pemagine.a.src.lst
feffc7
}
feffc7
feffc7
pemagine_shared()
feffc7
{
feffc7
	lz_src_dirs="src"
feffc7
	lz_cflags_step="-DPE_BUILD"
feffc7
feffc7
	if ! [ "$lz_pecoff_winnt"x = yesx ]; then
feffc7
		lz_cflags_step="$lz_cflags_step -fpic"
feffc7
	fi
feffc7
feffc7
	lz_compile "$pemagine_so_obj_list" "$pemagine_so_src_list" "$lz_dyobj_ext"
feffc7
        lz_link    "$pemagine_so_obj_list" "$pemagine_so_src_list" "$pemagine_so_name" \
feffc7
			"$pemagine_so_ldflags" \
feffc7
			''
feffc7
}
feffc7
feffc7
feffc7
pemagine_static()
feffc7
{
feffc7
	lz_src_dirs="src"
feffc7
feffc7
	lz_compile "$pemagine_a_obj_list" "$pemagine_a_src_list" "$lz_stobj_ext"
feffc7
        lz_archive "$pemagine_a_obj_list" "$pemagine_a_src_list" "$pemagine_a_name"
feffc7
}
feffc7
feffc7
feffc7
pemagine_xstatic()
feffc7
{
feffc7
	lz_src_dirs="src"
feffc7
	lz_cflags_step="-DPE_BUILD"
feffc7
feffc7
	lz_compile "$pemagine_a_obj_list" "$pemagine_a_src_list" "$lz_stobj_ext"
feffc7
        lz_archive "$pemagine_a_obj_list" "$pemagine_a_src_list" "$pemagine_a_name"
feffc7
}
feffc7
feffc7
feffc7
pemagine_install_headers()
feffc7
{
feffc7
	lz_pushd $lz_project_dir
feffc7
feffc7
	cp -r -t $lz_prefix/include include/$lz_project_name
feffc7
feffc7
	lz_popd
feffc7
}
feffc7
feffc7
feffc7
pemagine_install_shared()
feffc7
{
feffc7
	lz_pushd $lz_build_dir/lib
feffc7
feffc7
	cp -t $lz_prefix/lib $pemagine_lib_name$lz_dylib_ext
feffc7
	cp -t $lz_prefix/lib $pemagine_lib_name$lz_implib_ext
feffc7
feffc7
	lz_popd
feffc7
}
feffc7
feffc7
feffc7
pemagine_install_static()
feffc7
{
feffc7
	lz_pushd $lz_build_dir/lib
feffc7
feffc7
	cp -t $lz_prefix/lib $pemagine_lib_name$lz_stlib_ext
feffc7
feffc7
	lz_popd
feffc7
}
feffc7
feffc7
feffc7
pemagine_install_xstatic()
feffc7
{
feffc7
	lz_step pemagine_xstatic
feffc7
	lz_step pemagine_install_static
feffc7
}
feffc7
feffc7
pemagine_all()
feffc7
{
feffc7
	lz_step pemagine_shared
feffc7
	lz_step pemagine_static
feffc7
}
feffc7
feffc7
feffc7
pemagine_install()
feffc7
{
feffc7
	lz_step pemagine_all
feffc7
	lz_step pemagine_install_shared
feffc7
	lz_step pemagine_install_static
feffc7
	lz_step pemagine_install_headers
feffc7
}