14 class CLASS_DECL_ACME context :
29 ::string m_strBuildIndexStagePrefix;
35 ::string m_strGitCloneBranch;
36 ::string_array_base m_straOutput;
43 ::string m_strRelease;
48 ::string m_strStagePlatform;
49 ::string m_strPlatform;
51 ::string m_strConfiguration;
55 ::particle_pointer m_pmutexLines;
65 void initialize(
::particle* pparticle)
override;
68 virtual void prepare(const ::scoped_string & scopedstrOperatingSystem);
70 virtual ::file::path get_source_folder_path(const ::scoped_string& strRelative = {});
71 virtual ::file::path get_build_folder_path(const ::scoped_string& strRelative = {});
73 virtual void create_source_directory(const ::scoped_string& strRelative = {});
74 virtual void change_to_source_directory(const ::scoped_string& strRelative = {});
76 virtual void prepare_compile_and_link_environment();
78 virtual void prepare_compilation_script(::string & str);
79 virtual void prepare_linking_script(::string & str);
81 using ::acme::shell::command_system;
82 ::i32 command_system(const ::scoped_string& scopedstr,
const class ::time& timeOut = 12_h, const ::file::path& pathWorkingDirectory = {}, ::e_display edisplay = e_display_none)
override;
86 virtual void download_and_uncompress();
87 virtual void git_clone();
88 virtual ::i32 git_bash(const ::scoped_string& scopedstr,
const class ::time& timeTimeout);
89 virtual ::i32 bash(const ::scoped_string & scopedstr,
const class ::time & timeTimeout);
90 virtual ::i32 zsh(const ::scoped_string & scopedstr,
const class ::time & timeTimeout);
92 void untar(const ::file::path& pathFolder, const ::payload& payloadTar, ::i32 iStripComponent = 0,
::function<
void(const ::scoped_string& scopedstr)> = {});
95 virtual ::string prepare_path(const ::file::path & path);
98 virtual void list_host_builds();
101 virtual ::file::path base_integration_folder();
103 virtual ::file::path host_integration_folder();
107 virtual void defer_nasm();
109 virtual void defer_yasm();
111 virtual void defer_has_posix_shell_command(const ::scoped_string & scopedstr, const ::scoped_string & scopedstrInstallHintPackage = {}, enum_posix_shell eposixshell = e_posix_shell_system_default);
113#ifdef WINDOWS_DESKTOP
116 virtual void set_msys2(
bool bSet =
true);
121 virtual ::string current_integration();
123 virtual ::string integration_main_status(const ::scoped_string& scopedstrSlashed);
124 virtual ::string integration_main_status();
125 virtual bool integration_is_any_running();
126 virtual ::string integration_can_start(const ::scoped_string& scopedstrIntegration);
127 virtual ::string integration_one_that_is_building();
130 virtual ::string build_index_stage_prefix();
131 virtual ::string build_index_radix(::integration::enum_index eindex);