bool am_build_exports() { if (!file_exists("main.lua")) { fprintf(stderr, "Error: could not find main.lua in directory %s\n", am_opt_data_dir); return false; } am_make_dir(AM_TMP_DIR); if (!am_load_config()) return false; export_config conf; conf.basepath = (const char*)am_get_base_path(); conf.apptitle = am_conf_app_title; conf.appshortname = am_conf_app_shortname; conf.appid = am_conf_app_id; conf.appversion = am_conf_app_version; conf.luavm = "lua51"; conf.grade = "release"; conf.pakfile = ".amulet_tmp/data.pak"; if (!build_data_pak(&conf)) return false; bool ok = build_windows_export(&conf) && build_mac_export(&conf) && build_linux_export(&conf) && build_html_export(&conf) && true; am_delete_file(conf.pakfile); am_delete_empty_dir(AM_TMP_DIR); free((void*)conf.basepath); return ok; }
bool am_build_exports(uint32_t flags) { if (!file_exists("main.lua")) { fprintf(stderr, "Error: could not find main.lua in directory %s\n", am_opt_data_dir); return false; } am_make_dir(AM_TMP_DIR); if (!am_load_config()) return false; export_config conf; conf.basepath = (const char*)am_get_base_path(); conf.title = am_conf_app_title; conf.shortname = am_conf_app_shortname; conf.appid = am_conf_app_id; conf.version = am_conf_app_version; conf.display_name = am_conf_app_display_name; conf.dev_region = am_conf_app_dev_region; conf.supported_languages = am_conf_app_supported_languages; conf.orientation = am_conf_app_display_orientation; conf.icon = am_conf_app_icon; conf.launch_image = am_conf_app_launch_image; conf.luavm = "lua51"; conf.grade = "release"; conf.pakfile = AM_TMP_DIR AM_PATH_SEP_STR "data.pak"; if (!build_data_pak(&conf)) return false; bool ok = ((!(flags & AM_EXPORT_FLAG_WINDOWS)) || build_windows_export(&conf)) && ((!(flags & AM_EXPORT_FLAG_OSX)) || build_mac_export(&conf)) && ((!(flags & AM_EXPORT_FLAG_IOS)) || build_ios_export(&conf)) && ((!(flags & AM_EXPORT_FLAG_LINUX)) || build_linux_export(&conf)) && ((!(flags & AM_EXPORT_FLAG_HTML)) || build_html_export(&conf)) && true; am_delete_file(conf.pakfile); am_delete_empty_dir(AM_TMP_DIR); free((void*)conf.basepath); return ok; }