openubmc-bingo 0.6.27__py3-none-any.whl → 0.6.33__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of openubmc-bingo might be problematic. Click here for more details.

bmcgo/__init__.py CHANGED
@@ -9,4 +9,4 @@
9
9
  # MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
10
10
  # See the Mulan PSL v2 for more details.
11
11
 
12
- __version__ = '0.6.27'
12
+ __version__ = '0.6.33'
bmcgo/cli/cli.py CHANGED
@@ -243,7 +243,10 @@ class Command(object):
243
243
  """HIDDEN: entry point for executing commands, dispatcher to class
244
244
  methods
245
245
  """
246
- if not self._check_conan():
246
+ force_conan2 = False
247
+ if "--conan2" in args[0]:
248
+ force_conan2 = True
249
+ if not self._check_conan(force_conan2):
247
250
  return 1
248
251
  self._check_conan_profile()
249
252
 
@@ -353,10 +356,10 @@ class Command(object):
353
356
  tools.run_command(f"cp {src_file} {dst_file}")
354
357
  tools.run_command(f"sed -i 's/208\\.[0-9]\\+\\.[0-9]\\+/{rtos_version}/g' {dst_file}", command_echo=False)
355
358
 
356
- def _check_conan(self):
357
- need_conan_v2 = False
359
+ def _check_conan(self, force_conan2):
360
+ need_conan_v2 = force_conan2
358
361
  conf = None
359
- if self.bconfig.component:
362
+ if self.bconfig.component and not force_conan2:
360
363
  conanfile = os.path.join(self.bconfig.component.folder, "conanfile.py")
361
364
  conf = self.bconfig.component.config
362
365
  if not os.path.isfile(conanfile):
@@ -371,10 +374,16 @@ class Command(object):
371
374
  if not match:
372
375
  continue
373
376
  import semver
377
+ # 临时兼容性措施,强制使用conan1构建
378
+ # 背景:开源组件初期未获取平台conan2.0支持,只能构建出conan1的包,但为了上库conan2.0的构建脚本
379
+ # 需要提供一个标记用于临时指示强制使用conan1构建
380
+ # 待平台版本正式上线后,删除1.60.0判断
381
+ if semver.satisfies("1.60.0", match[1]):
382
+ break
374
383
  if semver.satisfies("2.13.0", match[1]):
375
384
  need_conan_v2 = True
376
385
  break
377
- else:
386
+ elif not force_conan2:
378
387
  if self.bconfig.ibmc_sdk:
379
388
  conf = self.bconfig.ibmc_sdk.config
380
389
  elif self.bconfig.manifest:
bmcgo/component/build.py CHANGED
@@ -261,7 +261,9 @@ class BuildComp():
261
261
 
262
262
  def run_conan_v2(self):
263
263
  self.check_conan_profile()
264
- from_source = f"--build={self.info.name}/*"
264
+ from_source = ""
265
+ if not self.info.without_build:
266
+ from_source = f"--build={self.info.name}/*"
265
267
  if self.info.from_source:
266
268
  from_source = "--build=*"
267
269
  else:
@@ -67,6 +67,9 @@ class InfoComp():
67
67
  parser.add_argument(
68
68
  "-r", "--remote", help=f"conan仓别名,请检查conan remote list查看已配置的conan仓"
69
69
  )
70
+ parser.add_argument(
71
+ "--conan2", help=f"强制使用conan2构建组件,此参数仅用于临时兼容组件conan1和conan2构建场景", action=misc.STORE_TRUE
72
+ )
70
73
  parser.add_argument(
71
74
  "-s",
72
75
  "--from_source",
@@ -99,6 +102,7 @@ class InfoComp():
99
102
  action=misc.STORE_TRUE,
100
103
  )
101
104
  parser.add_argument("-maint", "--maintain", help=argparse.SUPPRESS, action=misc.STORE_TRUE)
105
+ parser.add_argument("-wb", "--without_build", help="不强制源码构建组件自身", action=misc.STORE_TRUE)
102
106
  parser.add_argument(
103
107
  "-pr",
104
108
  "--profile",
@@ -176,6 +180,7 @@ class InfoComp():
176
180
  self.no_cache = self.args.no_cache and (not os.getenv('NOT_CLEAN_CONAN_CACHE') == 'True')
177
181
  # 是否是维护模式
178
182
  self.is_maintain = self.args.maintain
183
+ self.without_build = self.args.without_build
179
184
  self.enable_luajit = self.args.enable_luajit
180
185
  self.profile = Tools.get_conan_profile(self.args.profile, self.build_type, self.enable_luajit, self.test)
181
186
  if self.profile == "profile.luajit.ini":
@@ -116,7 +116,7 @@ class ConanBase(ConanFile):
116
116
  update_conandata(self, {"sources": {self.version: {"branch": None, "url": None, "pwd": os.getcwd(), "timestamp": int(time.time())}}})
117
117
  return
118
118
  try:
119
- tag = git.run(f"tag --points-at HEAD | grep {self.version}")
119
+ tag = git.run(f"tag --points-at HEAD | grep -m 1 {self.version}")
120
120
  except:
121
121
  tag = ""
122
122
  update_conandata(self, {"sources": {self.version: {"branch": f"refs/tags/{tag}" if tag else commit, "url": url}}})
@@ -273,6 +273,8 @@ class ConanBase(ConanFile):
273
273
  libs.append(libname)
274
274
 
275
275
  if dirs:
276
+ dirs.sort()
277
+ libs.sort()
276
278
  self.cpp_info.components["${pkg.name}"].set_property("cmake_target_name", "${pkg.name}::${pkg.name}")
277
279
  self.cpp_info.components["${pkg.name}"].set_property("cmake_target_aliass", ["${pkg.name}::${pkg.name}"])
278
280
  self.cpp_info.components["${pkg.name}"].set_property("pkg_config_name", "${pkg.name}")
bmcgo/component/test.py CHANGED
@@ -133,7 +133,6 @@ class TestComp():
133
133
  parser.add_argument("-cnt", "--fuzz_count", help="Fuzz count", required=False, type=int, default=100000)
134
134
  parser.add_argument("-f", "--test_filter", help="Run unit test with a filter", required=False, default='.')
135
135
  parser.add_argument("-a", "--app", help="App in hica", required=False, default='all')
136
- parser.add_argument("-wb", "--without_build", help="测试时不重新构建", action=misc.STORE_TRUE)
137
136
  parser.add_argument("--coverage_exclude", help="Specify coverage exclude file path of whitelist",
138
137
  required=False, default="")
139
138
  return parser
@@ -714,17 +714,22 @@ class TaskClass(Task):
714
714
  for rrid, revision in recipe.get("revisions", {}).items():
715
715
  for pid, _ in revision.get("packages", {}).items():
716
716
  cmd = f"conan cache path {name}#{rrid}:{pid}"
717
- path = self.run_command(cmd, capture_output=True).stdout.strip()
718
- if not os.path.isdir(path):
717
+ result = self.run_command(cmd, capture_output=True, ignore_error=True)
718
+ ret_code = result.returncode
719
+ path = result.stdout.strip()
720
+ if ret_code != 0 or not os.path.isdir(path):
719
721
  cmd = f"conan remove {name}#{rrid}:{pid} -c"
720
722
  self.run_command(cmd)
721
723
  cmd = f"conan cache path {name}#{rrid}"
722
- path = self.run_command(cmd, capture_output=True).stdout.strip()
723
- if not os.path.isdir(path):
724
+ result = self.run_command(cmd, capture_output=True, ignore_error=True)
725
+ ret_code = result.returncode
726
+ path = result.stdout.strip()
727
+ if ret_code != 0 or not os.path.isdir(path):
724
728
  cmd = f"conan remove {name}#{rrid} -c"
725
729
  self.run_command(cmd)
726
730
 
727
731
  def install_openubmc_v2(self):
732
+ channel_cmd = " --user=openubmc --channel=stable"
728
733
  profile_file = os.path.join(self.tools.conan_profiles_dir, self.config.profile)
729
734
  if not os.path.isfile(profile_file):
730
735
  raise BmcGoException(f"{profile_file} 文件不存在")
@@ -737,6 +742,7 @@ class TaskClass(Task):
737
742
  lock_cmd = f"conan lock create . {base_cmd} --lockfile-out={self.lockfile}"
738
743
  self.run_command(lock_cmd, capture_output=False)
739
744
  graph_cmd = f"conan graph info . {base_cmd} -f json --lockfile={self.lockfile} --out-file={self.graphfile}"
745
+ graph_cmd += channel_cmd
740
746
  self.run_command(graph_cmd)
741
747
  self.success(f"start build dependency packages of {self.config.board_name}")
742
748
  if self.skip_install_comp:
@@ -749,7 +755,7 @@ class TaskClass(Task):
749
755
  bcp = BuildConans(self.graphfile, self.lockfile, base_cmd, self.config.from_source, self.config.log_path)
750
756
  bcp.build()
751
757
  self.clean_folder_not_exist_packages()
752
- cmd = f"conan create . {base_cmd} --build=missing"
758
+ cmd = f"conan create . {base_cmd} {channel_cmd} --build=missing"
753
759
  self.info(f"start build {self.config.board_name}: {cmd}")
754
760
  self.run_command(cmd)
755
761
 
@@ -869,6 +875,8 @@ class TaskClass(Task):
869
875
  os.makedirs(inner_path, exist_ok=True)
870
876
  self.run_command(f'cp -f {self.lockfile} {os.path.join(inner_path, f"package_{self.config.board_name}.lock")}')
871
877
  self.run_command(f'cp -f {self.lockfile} {os.path.join(self.config.output_path, f"package.lock")}')
878
+ if misc.conan_v2():
879
+ self.run_command(f'cp -f {self.graphfile} {os.path.join(self.config.output_path, f"graph.info")}')
872
880
 
873
881
  def copy_components(self, comps: list, profile):
874
882
  # 优先处理rootfs
@@ -1118,8 +1126,8 @@ class TaskClass(Task):
1118
1126
  self.run_command(cmd)
1119
1127
  cmd = f"cp temp/.deploy/luajit/usr/lib64/liblua.so {conan_bin}"
1120
1128
  self.run_command(cmd)
1121
- if os.path.isfile("temp/.deploy/luajit/usr/bin/jit"):
1122
- cmd = f"cp -r temp/.deploy/luajit/usr/bin/jit {conan_bin}"
1129
+ if os.path.isdir("temp/.deploy/luajit/usr/bin/jit"):
1130
+ cmd = f"cp -rf temp/.deploy/luajit/usr/bin/jit {conan_bin}"
1123
1131
  self.run_command(cmd)
1124
1132
  self.link(luac, luac_back)
1125
1133
  # 仅在覆盖率使能场景下,对luac进行打桩
bmcgo/utils/tools.py CHANGED
@@ -438,10 +438,10 @@ class Tools():
438
438
  rtos_version = platform_package.get("options", {}).get(
439
439
  "rtos_version", "rtos_v2"
440
440
  )
441
- enable_haf = platform_package.get("options", {}).get("enable_haf", False)
441
+ enable_haf = platform_package.get("options", {}).get("enable_haf", True)
442
442
  append_cmd = f"-o {option_key}:rtos_version={rtos_version}"
443
+ append_cmd += f" -o {option_key}:enable_haf={enable_haf}"
443
444
  append_cmd += f" -r {remote}" if remote else ""
444
- append_cmd += f" -o {option_key}:enable_haf=True" if enable_haf else ""
445
445
  if update_conan_cache:
446
446
  append_cmd += " -u"
447
447
  append_cmd += " --build=missing"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: openubmc-bingo
3
- Version: 0.6.27
3
+ Version: 0.6.33
4
4
  Summary: Tools provided by openubmc
5
5
  Home-page: https://openubmc.cn
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,4 +1,4 @@
1
- bmcgo/__init__.py,sha256=oqZ8oOARtejTeAecTilQ7hon25T3svORSMnhnL6HQwY,562
1
+ bmcgo/__init__.py,sha256=MSbDCURCHz9rQhhc2TNjfE-JFDxFzBia9RWAceY8b0Y,562
2
2
  bmcgo/bmcgo.py,sha256=uD4TsfjrFB5aQPIS6WRUVc9ShXX-dSImY9ezkB13g1w,685
3
3
  bmcgo/bmcgo_config.py,sha256=-HZcTsnccE5wUsgGJ59kq8sDdu8feftIbpyoFvyvBhU,11264
4
4
  bmcgo/errors.py,sha256=QW1ndrJcJ2Ws7riOznPKVvZsNlrYk73eZol7w8gJTPU,3076
@@ -7,7 +7,7 @@ bmcgo/logger.py,sha256=rcMqJnyQ5Ag3k04KLEskrG8ZJ508OOU_JH4fMFiGOqQ,6644
7
7
  bmcgo/misc.py,sha256=w0vzsD7uzrsxTly5Y1viLgYTKHhLP4sxa499XwbqHnU,6986
8
8
  bmcgo/worker.py,sha256=OXz5Gam3pmZjgQeoGJrYy73ZrQszCOxk9X19nbeBI_A,15710
9
9
  bmcgo/cli/__init__.py,sha256=BDXz8BcSlCkfo5UYt6j2rm89-HiYA1ZzfpFhy99MH-0,538
10
- bmcgo/cli/cli.py,sha256=pgkIjjo3owY3tNbujIUGxJshanVElrwJ0gsXj8X3BXI,27181
10
+ bmcgo/cli/cli.py,sha256=kd1Bncj5eI77YDmptd4oENzGcXyqfszi0YLqvheGCWo,27808
11
11
  bmcgo/cli/config.conan2.yaml,sha256=SAtM_6_qOjZbkgUT5fzWbhbq4aWCayqE8o4xJ2vBRww,261
12
12
  bmcgo/cli/config.yaml,sha256=tbnFhz2TTrl2-ALpHHujbXB1ymZpjGC4f0zTfqfUZfM,194
13
13
  bmcgo/codegen/__init__.py,sha256=eplRBfR_obzVWMQtIeX1RRq6DOEezBx_l1EqcZYLRPM,775
@@ -168,13 +168,13 @@ bmcgo/codegen/lua/v1/templates/apps/service.lua.mako,sha256=wd_NJtiSSMbR-lxEqv-r
168
168
  bmcgo/codegen/lua/v1/templates/apps/utils/mdb_intf.lua.mako,sha256=msdj2SygZvV3RIEHLeVDfZvOzZ99Yy27SwPVrFVVcpc,1242
169
169
  bmcgo/codegen/lua/v1/templates/apps/utils/mdb_obj.lua.mako,sha256=oCzx2u3bjvCdNKX5oC8j6Q-Zb21q6SFCqd14_VzrWvo,349
170
170
  bmcgo/component/__init__.py,sha256=BDXz8BcSlCkfo5UYt6j2rm89-HiYA1ZzfpFhy99MH-0,538
171
- bmcgo/component/build.py,sha256=HWjgY1L1AXL7ndA35PKMFfweGSd8xXTRjY-ULW9ngGw,12851
171
+ bmcgo/component/build.py,sha256=zEtX3IG43z-EC8frpuRRH8zx2KjVuA1LlLnhDgErhqE,12920
172
172
  bmcgo/component/component_dt_version_parse.py,sha256=-Rt6i2fZrmYNZGoMqB21D_T9fC7fhhtUFIFvdPsMICM,14188
173
173
  bmcgo/component/component_helper.py,sha256=rNwfhagfz6E3BjKERq9oOPLRfeKQlqhLojb6oJLXcEA,7933
174
174
  bmcgo/component/deploy.py,sha256=Iy5CsiolKS1h5jDg13nYkfy6--BtbBZ8FLou2oVuoLQ,6544
175
175
  bmcgo/component/gen.py,sha256=lhPe_VV08CDFSydSLCX7IC5m8obNvYZSSzIp9o84nd0,7248
176
- bmcgo/component/package_info.py,sha256=5iOcS9gFnwBQo3uNivVjgeJw_xP3RDnnBA7nxjOc2vs,14472
177
- bmcgo/component/test.py,sha256=kNfqBSiBoZDQoyFjymIEJt9ohXi3_2rELsvyxCzpLNk,45371
176
+ bmcgo/component/package_info.py,sha256=pEeRDfIeHYBt0SAqN_Arpv3d-S1XVB7Mn5Z0MNSRloU,14837
177
+ bmcgo/component/test.py,sha256=Kpg5fmcJ-F2lDlHsKTBXjhB00T-IOr5QWGfHsRXVgA0,45260
178
178
  bmcgo/component/analysis/analysis.py,sha256=VJpKdvQmlFQaeKWl3-JggsPq4ioObKOXuaBfzgd74hQ,8497
179
179
  bmcgo/component/analysis/build_deps.py,sha256=cyQh5D3R1syQfMJcNxEIKKSJGanPMNRFPGlJRitDAa0,7324
180
180
  bmcgo/component/analysis/data_deps.py,sha256=UkuqMhJseZIXMZWC2cJ4csko7rENPlpXJUU0eRWVZNM,16148
@@ -190,7 +190,7 @@ bmcgo/component/coverage/c_incremental_cov_report.template,sha256=FPhK1DZtmWsjDx
190
190
  bmcgo/component/coverage/incremental_cov.py,sha256=Uf-UdY4CW9rpP4sbURkCXBWyYMXWaG3R1Pyo3cDNvcQ,16859
191
191
  bmcgo/component/template/conanbase.py.mako,sha256=dNvbToMSYI7jod7maCpR0PBizvVoQHvXxglmN9LNflg,10984
192
192
  bmcgo/component/template/conanfile.deploy.py.mako,sha256=zpxluBjUFmJHfFrnBknxZ3cv3cxcqzJuGh2eN0uMXZA,889
193
- bmcgo/component/template_v2/conanbase.py.mako,sha256=fz2i1A4LecWfsvKno7ru_jRAVqR7G8dyj54SgQPKAv4,15676
193
+ bmcgo/component/template_v2/conanbase.py.mako,sha256=TxqfYjhwKKjSARDJAIodSOWRhvUvsbOlw8nOjdO5QRo,15729
194
194
  bmcgo/component/template_v2/conanfile.deploy.py.mako,sha256=Xbd-PlfVHOWeRFLfvzINeykiZzzSHsgO_yUUvYrKqTw,512
195
195
  bmcgo/functional/__init__.py,sha256=BDXz8BcSlCkfo5UYt6j2rm89-HiYA1ZzfpFhy99MH-0,538
196
196
  bmcgo/functional/analysis.py,sha256=pXakxSojBH-dULngbmgMHR3bq9tphOaAN4euGKgEYoc,4016
@@ -224,7 +224,7 @@ bmcgo/tasks/__init__.py,sha256=VapgzhPMmB7dzPIRohoVm1jjfVn_v97cYNCRmkxScaU,539
224
224
  bmcgo/tasks/download_buildtools_hm.py,sha256=f4UxStARc8Z8DnT_5O6ONajQ7P0sKyJ8brixr43fHVQ,5988
225
225
  bmcgo/tasks/misc.py,sha256=GK_bSDLGZW0FxywB2ICG1iIEz2y2QoCb1YQQk8SYOIA,711
226
226
  bmcgo/tasks/task.py,sha256=w8tdU5NwoUfVF4xKFvSzcCWCf0FGTBHJAToNLlP0p4w,18424
227
- bmcgo/tasks/task_build_conan.py,sha256=EpxDBOSmj9YIDSF8ifG0lREIAhOfQbWjt29lmO6mI1g,52546
227
+ bmcgo/tasks/task_build_conan.py,sha256=HNjEOuUN0uXN_myrhPP6d6BbxQqGnSVl9ZiJoZVdqA0,53024
228
228
  bmcgo/tasks/task_build_rootfs_img.py,sha256=JKEvldJnLWu2IdVSntuVowocQwdVtBQUpxzhplYauPI,29209
229
229
  bmcgo/tasks/task_build_wbd_up.py,sha256=X9-0Qqad-s3mGfJBMeBQvfZ99KlWcgaMluDr_zv6Z-o,3122
230
230
  bmcgo/tasks/task_buildgppbin.py,sha256=epBxxrYFPgoTzpBgPzSRXcUs-ia_BJWsLGflylEJS7I,6614
@@ -252,7 +252,7 @@ bmcgo/utils/json_validator.py,sha256=_k5wU78wfYGrzvSDaqOEtT4otgKUjquVhZNpVf2PW_c
252
252
  bmcgo/utils/mapping_config_patch.py,sha256=_gKfZnrvsLPgHn1yXhEJRVTAeuGpeGD9T-Pqyw5Ydys,16827
253
253
  bmcgo/utils/merge_csr.py,sha256=JNxHCfW1au84WQshdz0aQy8wMTEOHonjQT3s6LjlZN4,4580
254
254
  bmcgo/utils/perf_analysis.py,sha256=fh6lV9AAKVhpPkGPwAJ8EWfGfUoHjqGYQxrvc32Xiac,4767
255
- bmcgo/utils/tools.py,sha256=dB7lX0jv-mE6pBalzm-VUZEnxPSbYkgC9soD_FAAnFg,32587
255
+ bmcgo/utils/tools.py,sha256=Ad6TwJ2iEx3isWlGdlZzsZAKjVrBOj_dnbPmeJfICHY,32572
256
256
  bmcgo/utils/installations/README.md,sha256=hKXnFYmeHEuROFMFE-vzlGLSHg71bei5ZYwyYZphWNk,2
257
257
  bmcgo/utils/installations/__init__.py,sha256=BDXz8BcSlCkfo5UYt6j2rm89-HiYA1ZzfpFhy99MH-0,538
258
258
  bmcgo/utils/installations/base_installer.py,sha256=3UZiKWoa41ygRbLD3QsE2FTp-VFp79V0I53QLRIf4E8,5902
@@ -264,8 +264,8 @@ bmcgo/utils/installations/install_plans/qemu.yml,sha256=lT7aKag60QUH6hTGFKa3hGRq
264
264
  bmcgo/utils/installations/install_plans/studio.yml,sha256=APR3GM-3Q11LFfe8vh7t3LztDn4LLEpNHRUNjkaVekA,143
265
265
  bmcgo/utils/installations/installers/apt_installer.py,sha256=nPaCb4cobSi9InN_aHsEPtQ0k4FgsCUWE5_VgBPvcRE,3769
266
266
  bmcgo/utils/installations/installers/pip_installer.py,sha256=dDdios1EQ7fzt90r02pZeoM3jCmjslLzkSvzd2hgRVM,3241
267
- openubmc_bingo-0.6.27.dist-info/METADATA,sha256=RJul5-nRe2BswGFKly97xf_nQAlfpNu2_AeO1OOOAs0,1010
268
- openubmc_bingo-0.6.27.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
269
- openubmc_bingo-0.6.27.dist-info/entry_points.txt,sha256=UUoUP-vAWTgg9vEYbRwYqOBHgpRtkngdzMPb-ocz90g,42
270
- openubmc_bingo-0.6.27.dist-info/top_level.txt,sha256=9AcvCAt1nZcOgMsGt6T07mg2Bgtdet-3mHTwg91axgI,6
271
- openubmc_bingo-0.6.27.dist-info/RECORD,,
267
+ openubmc_bingo-0.6.33.dist-info/METADATA,sha256=KnHh344kR5Wqxi49MJEY9C92awC_X6JS6kWLx8wYpL4,1010
268
+ openubmc_bingo-0.6.33.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
269
+ openubmc_bingo-0.6.33.dist-info/entry_points.txt,sha256=UUoUP-vAWTgg9vEYbRwYqOBHgpRtkngdzMPb-ocz90g,42
270
+ openubmc_bingo-0.6.33.dist-info/top_level.txt,sha256=9AcvCAt1nZcOgMsGt6T07mg2Bgtdet-3mHTwg91axgI,6
271
+ openubmc_bingo-0.6.33.dist-info/RECORD,,