Bug 2334587 - Review Request: migraphx - AMD's graph optimization engine [NEEDINFO]
Summary: Review Request: migraphx - AMD's graph optimization engine
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Jeremy Newton
QA Contact: Fedora Extras Quality Assurance
URL: https://github.com/ROCm/AMDMIGraphX
Whiteboard:
Depends On: 2336118
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-12-27 17:12 UTC by Tom.Rix
Modified: 2025-12-05 20:18 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2025-12-05 20:18:52 UTC
Type: ---
Embargoed:
alexjnewt: fedora-review+
dominik: needinfo? (Tom.Rix)


Attachments (Terms of Use)
The .spec file difference from Copr build 9450680 to 9683392 (10.17 KB, patch)
2025-10-13 07:22 UTC, Fedora Review Service
no flags Details | Diff

Description Tom.Rix 2024-12-27 17:12:15 UTC
Spec URL: https://trix.fedorapeople.org/amdmigraphx.spec

AMD MIGraphX is AMD's graph inference engine, which
accelerates machine learning model inference.

This BZ is to track this package and it's dependencies that also need packaging.
Needs at least composable_kernel to be packaged.


Reproducible: Always

Comment 1 Fedora Review Service 2024-12-27 17:12:26 UTC
Cannot find any valid SRPM URL for this ticket. Common causes are:

- You didn't specify `SRPM URL: ...` in the ticket description
  or any of your comments
- The URL schema isn't HTTP or HTTPS
- The SRPM package linked in your URL doesn't match the package name specified
  in the ticket summary


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 2 Jorge Nolck 2025-01-12 23:24:15 UTC
I tried to build this on my machine but got an error. 

CMake Error at /usr/lib64/cmake/composable_kernel/composable_kernelConfig.cmake:34 (include):
  include could not find requested file:

    /usr/lib64/cmake/composable_kernel/composable_kerneljit_libraryTargets.cmake
Call Stack (most recent call first):
  src/targets/gpu/CMakeLists.txt:60 (find_package)


CMake Error at src/targets/gpu/CMakeLists.txt:60 (find_package):
  Found package configuration file:

    /usr/lib64/cmake/composable_kernel/composable_kernelConfig.cmake

  but it set composable_kernel_FOUND to FALSE so package "composable_kernel"
  is considered to be NOT FOUND.  Reason given by package:

  Unsupported component: jit_library

I build composable kernel with the spec and srpm you provided in 2336118

Comment 3 Tom.Rix 2025-01-13 12:23:44 UTC
Thanks for giving this a try.
The spec file listed is a work in progress as a way to show that the dependencies, like ck are needed.
Is there an improvement to the ck package you can recommend ?

Comment 4 Jorge Nolck 2025-01-14 05:08:07 UTC
(In reply to Tom.Rix from comment #3)
> Thanks for giving this a try.
> The spec file listed is a work in progress as a way to show that the
> dependencies, like ck are needed.
> Is there an improvement to the ck package you can recommend ?

Yes, as per the documentation. 

"Additional cmake flags can be used to significantly speed-up the build:

    DTYPES (default is not set) can be set to any subset of "fp64;fp32;fp16;fp8;bf16;int8" to build instances of select data types only. The main default data types are fp32 and fp16; you can safely skip other data types.

    DL_KERNELS (default is OFF) must be set to ON in order to build instances, such as gemm_dl or batched_gemm_multi_d_dl. These instances are useful on architectures like the NAVI2x, as most other platforms have faster instances, such as xdl or wmma, available.

    DPP_KERNELS (default is OFF) must be set to ON in order to build instances, such as gemm_dpp. These instances are useful on architectures like the NAVI2x, as most other platforms have faster instances, such as xdl or wmma, available.

    CK_USE_FP8_ON_UNSUPPORTED_ARCH (default is OFF) must be set to ON in order to build instances, such as gemm_universal, gemm_universal_streamk and gemm_multiply_multiply for fp8 data type for GPU targets which do not have native support for fp8 data type, such as gfx908 or gfx90a. These instances are useful on architectures like the MI100/MI200 for the functional support only."

Maybe an easy way to choose DTYPES: in the spec in order to make compilation time shorter. I'm not sure if you can do this from a spec file, but set up sscache or make a comment about it there. This package takes ages to compile.

Comment 5 Jorge Nolck 2025-01-14 05:12:59 UTC
I kept going. Now I get this. and it does seem like we don't have this package in Fedora yet. 

CMake Error at src/targets/gpu/CMakeLists.txt:250 (find_package):
  Could not find a package configuration file provided by "rocMLIR"
  (requested version 1.0.0) with any of the following names:

    rocMLIRConfig.cmake
    rocmlir-config.cmake

  Add the installation prefix of "rocMLIR" to CMAKE_PREFIX_PATH or set
  "rocMLIR_DIR" to a directory containing one of the above files.  If
  "rocMLIR" provides a separate development package or SDK, be sure it has
  been installed.

Comment 6 Tom.Rix 2025-01-14 12:26:02 UTC
Yes, this package is needed.
I am working on packaging this package now.

Comment 7 Jorge Nolck 2025-01-15 15:38:14 UTC
I don't mean to be annoying, but I kept at this. I built rocmlir as the github instructions point out. 

Like, just switched the /opt/rocm. 

mkdir build
cd build
cmake -G Ninja .. -DBUILD_FAT_LIBROCKCOMPILER=On -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/opt/rocm/llvm/bin/clang -DCMAKE_CXX_COMPILER=/opt/rocm/llvm/bin/clang++
ninja

and then cmake --install . --prefix to a local directory. It looks like this 

include  lib  lib64  share

include include/rocmlir/

build  external  Miir.h  mlir  mlir-c

I did this to point your spec to that. 

rocMLIR_DIR=/home/jnolck/Downloads/software/install/ rpmbuild -bb SPECS/amdmigraphx.spec 

and I think it works. The compilation failed though with:

/home/jnolck/rpmbuild/BUILD/amdmigraphx-6.3.1-build/AMDMIGraphX-rocm-6.3.1/src/include/migraphx/half.hpp:28:10: fatal error: 'half/half.hpp' file not found
   28 | #include <half/half.hpp>
      |          ^~~~~~~~~~~~~~~
1 error generated.

I do have half installed, but it's in /include/half.hpp instead of include/half/half.hpp where that wants it. 

Created a sym link to that. Tried to build, tons of warnings, build failed. Ugh. I'm way over my head here.

Comment 8 Jorge Nolck 2025-01-15 15:55:05 UTC
switched the compiler flag to -DCMAKE_CXX_COMPILER=/usr/lib64/rocm/llvm/bin/clang++. It's building. used  -DCMAKE_CXX_COMPILER=%{rocmllvm_bindir}/clang++ like in your rocmlir.spec file. The script you are using here didn't work for me.

Comment 9 Jorge Nolck 2025-01-16 02:21:54 UTC
RPM build errors:
    Installed (but unpackaged) file(s) found:
   /usr/bin/migraphx-driver
   /usr/bin/migraphx-hiprtc-driver
   /usr/include/migraphx/api/export.h
   /usr/include/migraphx/export.h
   /usr/include/migraphx/gpu/device/export.h
   /usr/include/migraphx/gpu/export.h
   /usr/include/migraphx/migraphx.h
   /usr/include/migraphx/migraphx.hpp
   /usr/include/migraphx/onnx/export.h
   /usr/include/migraphx/py.hpp
   /usr/include/migraphx/py/export.h
   /usr/include/migraphx/ref/export.h
   /usr/include/migraphx/tf/export.h
   /usr/lib/cmake/migraphx/migraphx-config-version.cmake
   /usr/lib/cmake/migraphx/migraphx-config.cmake
   /usr/lib/cmake/migraphx/migraphx-targets-release.cmake
   /usr/lib/cmake/migraphx/migraphx-targets.cmake
   /usr/lib/debug/usr/bin/migraphx-driver-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/bin/migraphx-hiprtc-driver-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/libmigraphx_c.so.3.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/libmigraphx_py.so-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/libmigraphx_py_3.10.so-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/libmigraphx_py_3.11.so-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/libmigraphx_py_3.12.so-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/migraphx/lib/libmigraphx.so.2011000.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/migraphx/lib/libmigraphx_device.so.2011000.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/migraphx/lib/libmigraphx_gpu.so.2011000.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/migraphx/lib/libmigraphx_onnx.so.2011000.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/migraphx/lib/libmigraphx_ref.so.2011000.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/debug/usr/lib/migraphx/lib/libmigraphx_tf.so.2011000.0-6.3.1-1.fc42.x86_64.debug
   /usr/lib/libmigraphx_c.so
   /usr/lib/libmigraphx_c.so.3
   /usr/lib/libmigraphx_c.so.3.0
   /usr/lib/libmigraphx_py.so
   /usr/lib/libmigraphx_py_3.10.so
   /usr/lib/libmigraphx_py_3.11.so
   /usr/lib/libmigraphx_py_3.12.so
   /usr/lib/migraphx.cpython-310-x86_64-linux-gnu.so
   /usr/lib/migraphx.cpython-311-x86_64-linux-gnu.so
   /usr/lib/migraphx.cpython-312-x86_64-linux-gnu.so
   /usr/lib/migraphx/include/migraphx/adjust_allocation.hpp
   /usr/lib/migraphx/include/migraphx/algorithm.hpp
   /usr/lib/migraphx/include/migraphx/allocation_model.hpp
   /usr/lib/migraphx/include/migraphx/analyze_streams.hpp
   /usr/lib/migraphx/include/migraphx/any_ptr.hpp
   /usr/lib/migraphx/include/migraphx/apply_alpha_beta.hpp
   /usr/lib/migraphx/include/migraphx/argument.hpp
   /usr/lib/migraphx/include/migraphx/array.hpp
   /usr/lib/migraphx/include/migraphx/as_number.hpp
   /usr/lib/migraphx/include/migraphx/assert.hpp
   /usr/lib/migraphx/include/migraphx/assignment_options.hpp
   /usr/lib/migraphx/include/migraphx/auto_any_cast.hpp
   /usr/lib/migraphx/include/migraphx/auto_contiguous.hpp
   /usr/lib/migraphx/include/migraphx/auto_register.hpp
   /usr/lib/migraphx/include/migraphx/autocast_fp8.hpp
   /usr/lib/migraphx/include/migraphx/bit_cast.hpp
   /usr/lib/migraphx/include/migraphx/bit_signal.hpp
   /usr/lib/migraphx/include/migraphx/builtin.hpp
   /usr/lib/migraphx/include/migraphx/check_context.hpp
   /usr/lib/migraphx/include/migraphx/check_shapes.hpp
   /usr/lib/migraphx/include/migraphx/clamp.hpp
   /usr/lib/migraphx/include/migraphx/cloneable.hpp
   /usr/lib/migraphx/include/migraphx/common.hpp
   /usr/lib/migraphx/include/migraphx/common_dims.hpp
   /usr/lib/migraphx/include/migraphx/compile_options.hpp
   /usr/lib/migraphx/include/migraphx/compile_src.hpp
   /usr/lib/migraphx/include/migraphx/concat_opt.hpp
   /usr/lib/migraphx/include/migraphx/config.hpp
   /usr/lib/migraphx/include/migraphx/context.hpp
   /usr/lib/migraphx/include/migraphx/convert_to_json.hpp
   /usr/lib/migraphx/include/migraphx/convolution.hpp
   /usr/lib/migraphx/include/migraphx/copy_assignable_function.hpp
   /usr/lib/migraphx/include/migraphx/cpp_generator.hpp
   /usr/lib/migraphx/include/migraphx/dead_code_elimination.hpp
   /usr/lib/migraphx/include/migraphx/dfor.hpp
   /usr/lib/migraphx/include/migraphx/dom_info.hpp
   /usr/lib/migraphx/include/migraphx/dyn_output.hpp
   /usr/lib/migraphx/include/migraphx/dynamic_loader.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_allocation.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_common_subexpression.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_concat.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_contiguous.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_convert.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_data_type.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_identity.hpp
   /usr/lib/migraphx/include/migraphx/eliminate_pad.hpp
   /usr/lib/migraphx/include/migraphx/env.hpp
   /usr/lib/migraphx/include/migraphx/erase.hpp
   /usr/lib/migraphx/include/migraphx/errors.hpp
   /usr/lib/migraphx/include/migraphx/execution_environment.hpp
   /usr/lib/migraphx/include/migraphx/export.h
   /usr/lib/migraphx/include/migraphx/fallthrough.hpp
   /usr/lib/migraphx/include/migraphx/file_buffer.hpp
   /usr/lib/migraphx/include/migraphx/filesystem.hpp
   /usr/lib/migraphx/include/migraphx/fileutils.hpp
   /usr/lib/migraphx/include/migraphx/float8.hpp
   /usr/lib/migraphx/include/migraphx/float8_impl.hpp
   /usr/lib/migraphx/include/migraphx/float_equal.hpp
   /usr/lib/migraphx/include/migraphx/fp8_types.hpp
   /usr/lib/migraphx/include/migraphx/fp_to_double.hpp
   /usr/lib/migraphx/include/migraphx/functional.hpp
   /usr/lib/migraphx/include/migraphx/fuse_concat.hpp
   /usr/lib/migraphx/include/migraphx/fuse_pointwise.hpp
   /usr/lib/migraphx/include/migraphx/fuse_pointwise_reduce.hpp
   /usr/lib/migraphx/include/migraphx/fuse_reduce.hpp
   /usr/lib/migraphx/include/migraphx/gemm.hpp
   /usr/lib/migraphx/include/migraphx/generate.hpp
   /usr/lib/migraphx/include/migraphx/gpu/abs.hpp
   /usr/lib/migraphx/include/migraphx/gpu/allocation_model.hpp
   /usr/lib/migraphx/include/migraphx/gpu/analyze_streams.hpp
   /usr/lib/migraphx/include/migraphx/gpu/argmax.hpp
   /usr/lib/migraphx/include/migraphx/gpu/argmin.hpp
   /usr/lib/migraphx/include/migraphx/gpu/ck.hpp
   /usr/lib/migraphx/include/migraphx/gpu/code_object_op.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compile_gen.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compile_hip.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compile_hip_code_object.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compile_miopen.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compile_ops.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compile_pointwise.hpp
   /usr/lib/migraphx/include/migraphx/gpu/compiler.hpp
   /usr/lib/migraphx/include/migraphx/gpu/concat_gpu_opt.hpp
   /usr/lib/migraphx/include/migraphx/gpu/config.hpp
   /usr/lib/migraphx/include/migraphx/gpu/context.hpp
   /usr/lib/migraphx/include/migraphx/gpu/contiguous.hpp
   /usr/lib/migraphx/include/migraphx/gpu/convolution.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/arg_op.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/argmax.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/argmin.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/config.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/contiguous.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/fill.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/logsoftmax.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/multinomial.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/nonzero.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/prefix_scan_sum.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/reverse.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/rnn_variable_seq_lens.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device/topk.hpp
   /usr/lib/migraphx/include/migraphx/gpu/device_name.hpp
   /usr/lib/migraphx/include/migraphx/gpu/fuse_ck.hpp
   /usr/lib/migraphx/include/migraphx/gpu/fuse_mlir.hpp
   /usr/lib/migraphx/include/migraphx/gpu/fuse_ops.hpp
   /usr/lib/migraphx/include/migraphx/gpu/gemm.hpp
   /usr/lib/migraphx/include/migraphx/gpu/gemm_impl.hpp
   /usr/lib/migraphx/include/migraphx/gpu/gemm_softmax_gemm.hpp
   /usr/lib/migraphx/include/migraphx/gpu/group_query_attention.hpp
   /usr/lib/migraphx/include/migraphx/gpu/hip.hpp
   /usr/lib/migraphx/include/migraphx/gpu/hip_gemm.hpp
   /usr/lib/migraphx/include/migraphx/gpu/hip_gemm_impl.hpp
   /usr/lib/migraphx/include/migraphx/gpu/hipblaslt.hpp
   /usr/lib/migraphx/include/migraphx/gpu/kernel.hpp
   /usr/lib/migraphx/include/migraphx/gpu/logsoftmax.hpp
   /usr/lib/migraphx/include/migraphx/gpu/loop.hpp
   /usr/lib/migraphx/include/migraphx/gpu/lowering.hpp
   /usr/lib/migraphx/include/migraphx/gpu/lrn.hpp
   /usr/lib/migraphx/include/migraphx/gpu/miopen.hpp
   /usr/lib/migraphx/include/migraphx/gpu/mlir.hpp
   /usr/lib/migraphx/include/migraphx/gpu/multinomial.hpp
   /usr/lib/migraphx/include/migraphx/gpu/name.hpp
   /usr/lib/migraphx/include/migraphx/gpu/nonzero.hpp
   /usr/lib/migraphx/include/migraphx/gpu/oper.hpp
   /usr/lib/migraphx/include/migraphx/gpu/pack_args.hpp
   /usr/lib/migraphx/include/migraphx/gpu/perfdb.hpp
   /usr/lib/migraphx/include/migraphx/gpu/pooling.hpp
   /usr/lib/migraphx/include/migraphx/gpu/prefix_scan_sum.hpp
   /usr/lib/migraphx/include/migraphx/gpu/prefuse_ops.hpp
   /usr/lib/migraphx/include/migraphx/gpu/prepare_reduce.hpp
   /usr/lib/migraphx/include/migraphx/gpu/problem_cache.hpp
   /usr/lib/migraphx/include/migraphx/gpu/reduce_op.hpp
   /usr/lib/migraphx/include/migraphx/gpu/reverse.hpp
   /usr/lib/migraphx/include/migraphx/gpu/rnn_variable_seq_lens.hpp
   /usr/lib/migraphx/include/migraphx/gpu/rocblas.hpp
   /usr/lib/migraphx/include/migraphx/gpu/schedule_model.hpp
   /usr/lib/migraphx/include/migraphx/gpu/sync_device.hpp
   /usr/lib/migraphx/include/migraphx/gpu/target.hpp
   /usr/lib/migraphx/include/migraphx/gpu/time_op.hpp
   /usr/lib/migraphx/include/migraphx/gpu/topk.hpp
   /usr/lib/migraphx/include/migraphx/gpu/tuning_config.hpp
   /usr/lib/migraphx/include/migraphx/gpu/write_literals.hpp
   /usr/lib/migraphx/include/migraphx/half.hpp
   /usr/lib/migraphx/include/migraphx/hash.hpp
   /usr/lib/migraphx/include/migraphx/inline_module.hpp
   /usr/lib/migraphx/include/migraphx/insert_pad.hpp
   /usr/lib/migraphx/include/migraphx/instruction.hpp
   /usr/lib/migraphx/include/migraphx/instruction_ref.hpp
   /usr/lib/migraphx/include/migraphx/iota_iterator.hpp
   /usr/lib/migraphx/include/migraphx/iterator.hpp
   /usr/lib/migraphx/include/migraphx/iterator_for.hpp
   /usr/lib/migraphx/include/migraphx/json.hpp
   /usr/lib/migraphx/include/migraphx/layout_convolution.hpp
   /usr/lib/migraphx/include/migraphx/lexing.hpp
   /usr/lib/migraphx/include/migraphx/lifetime.hpp
   /usr/lib/migraphx/include/migraphx/literal.hpp
   /usr/lib/migraphx/include/migraphx/liveness.hpp
   /usr/lib/migraphx/include/migraphx/load_save.hpp
   /usr/lib/migraphx/include/migraphx/make_op.hpp
   /usr/lib/migraphx/include/migraphx/make_shared_array.hpp
   /usr/lib/migraphx/include/migraphx/make_signed.hpp
   /usr/lib/migraphx/include/migraphx/manage_ptr.hpp
   /usr/lib/migraphx/include/migraphx/marker.hpp
   /usr/lib/migraphx/include/migraphx/match/gelu_erf.hpp
   /usr/lib/migraphx/include/migraphx/match/gelu_tanh.hpp
   /usr/lib/migraphx/include/migraphx/match/layernorm.hpp
   /usr/lib/migraphx/include/migraphx/match/softmax.hpp
   /usr/lib/migraphx/include/migraphx/matcher.hpp
   /usr/lib/migraphx/include/migraphx/memory_coloring.hpp
   /usr/lib/migraphx/include/migraphx/module.hpp
   /usr/lib/migraphx/include/migraphx/module_ref.hpp
   /usr/lib/migraphx/include/migraphx/msgpack.hpp
   /usr/lib/migraphx/include/migraphx/normalize_attributes.hpp
   /usr/lib/migraphx/include/migraphx/normalize_ops.hpp
   /usr/lib/migraphx/include/migraphx/onnx.hpp
   /usr/lib/migraphx/include/migraphx/op/abs.hpp
   /usr/lib/migraphx/include/migraphx/op/acos.hpp
   /usr/lib/migraphx/include/migraphx/op/acosh.hpp
   /usr/lib/migraphx/include/migraphx/op/add.hpp
   /usr/lib/migraphx/include/migraphx/op/allocate.hpp
   /usr/lib/migraphx/include/migraphx/op/argmax.hpp
   /usr/lib/migraphx/include/migraphx/op/argmin.hpp
   /usr/lib/migraphx/include/migraphx/op/as_shape.hpp
   /usr/lib/migraphx/include/migraphx/op/asin.hpp
   /usr/lib/migraphx/include/migraphx/op/asinh.hpp
   /usr/lib/migraphx/include/migraphx/op/atan.hpp
   /usr/lib/migraphx/include/migraphx/op/atanh.hpp
   /usr/lib/migraphx/include/migraphx/op/binary.hpp
   /usr/lib/migraphx/include/migraphx/op/bitwise_and.hpp
   /usr/lib/migraphx/include/migraphx/op/broadcast.hpp
   /usr/lib/migraphx/include/migraphx/op/broadcast_for_dot.hpp
   /usr/lib/migraphx/include/migraphx/op/broadcast_with_dims.hpp
   /usr/lib/migraphx/include/migraphx/op/capture.hpp
   /usr/lib/migraphx/include/migraphx/op/ceil.hpp
   /usr/lib/migraphx/include/migraphx/op/clip.hpp
   /usr/lib/migraphx/include/migraphx/op/common.hpp
   /usr/lib/migraphx/include/migraphx/op/concat.hpp
   /usr/lib/migraphx/include/migraphx/op/contiguous.hpp
   /usr/lib/migraphx/include/migraphx/op/convert.hpp
   /usr/lib/migraphx/include/migraphx/op/convolution.hpp
   /usr/lib/migraphx/include/migraphx/op/convolution_backwards.hpp
   /usr/lib/migraphx/include/migraphx/op/cos.hpp
   /usr/lib/migraphx/include/migraphx/op/cosh.hpp
   /usr/lib/migraphx/include/migraphx/op/dequantizelinear.hpp
   /usr/lib/migraphx/include/migraphx/op/dimensions_of.hpp
   /usr/lib/migraphx/include/migraphx/op/div.hpp
   /usr/lib/migraphx/include/migraphx/op/dot.hpp
   /usr/lib/migraphx/include/migraphx/op/elu.hpp
   /usr/lib/migraphx/include/migraphx/op/equal.hpp
   /usr/lib/migraphx/include/migraphx/op/erf.hpp
   /usr/lib/migraphx/include/migraphx/op/exp.hpp
   /usr/lib/migraphx/include/migraphx/op/fill.hpp
   /usr/lib/migraphx/include/migraphx/op/flatten.hpp
   /usr/lib/migraphx/include/migraphx/op/floor.hpp
   /usr/lib/migraphx/include/migraphx/op/fmod.hpp
   /usr/lib/migraphx/include/migraphx/op/gather.hpp
   /usr/lib/migraphx/include/migraphx/op/gathernd.hpp
   /usr/lib/migraphx/include/migraphx/op/get_tuple_elem.hpp
   /usr/lib/migraphx/include/migraphx/op/greater.hpp
   /usr/lib/migraphx/include/migraphx/op/group_query_attention.hpp
   /usr/lib/migraphx/include/migraphx/op/gru.hpp
   /usr/lib/migraphx/include/migraphx/op/identity.hpp
   /usr/lib/migraphx/include/migraphx/op/if_op.hpp
   /usr/lib/migraphx/include/migraphx/op/im2col.hpp
   /usr/lib/migraphx/include/migraphx/op/isinf.hpp
   /usr/lib/migraphx/include/migraphx/op/isnan.hpp
   /usr/lib/migraphx/include/migraphx/op/layout.hpp
   /usr/lib/migraphx/include/migraphx/op/leaky_relu.hpp
   /usr/lib/migraphx/include/migraphx/op/less.hpp
   /usr/lib/migraphx/include/migraphx/op/load.hpp
   /usr/lib/migraphx/include/migraphx/op/log.hpp
   /usr/lib/migraphx/include/migraphx/op/log2.hpp
   /usr/lib/migraphx/include/migraphx/op/logical_and.hpp
   /usr/lib/migraphx/include/migraphx/op/logical_or.hpp
   /usr/lib/migraphx/include/migraphx/op/logical_xor.hpp
   /usr/lib/migraphx/include/migraphx/op/logsoftmax.hpp
   /usr/lib/migraphx/include/migraphx/op/loop.hpp
   /usr/lib/migraphx/include/migraphx/op/lrn.hpp
   /usr/lib/migraphx/include/migraphx/op/lstm.hpp
   /usr/lib/migraphx/include/migraphx/op/max.hpp
   /usr/lib/migraphx/include/migraphx/op/min.hpp
   /usr/lib/migraphx/include/migraphx/op/mod.hpp
   /usr/lib/migraphx/include/migraphx/op/mul.hpp
   /usr/lib/migraphx/include/migraphx/op/multibroadcast.hpp
   /usr/lib/migraphx/include/migraphx/op/multinomial.hpp
   /usr/lib/migraphx/include/migraphx/op/name.hpp
   /usr/lib/migraphx/include/migraphx/op/nearbyint.hpp
   /usr/lib/migraphx/include/migraphx/op/neg.hpp
   /usr/lib/migraphx/include/migraphx/op/nonmaxsuppression.hpp
   /usr/lib/migraphx/include/migraphx/op/nonzero.hpp
   /usr/lib/migraphx/include/migraphx/op/normalize_attribute.hpp
   /usr/lib/migraphx/include/migraphx/op/onehot.hpp
   /usr/lib/migraphx/include/migraphx/op/outline.hpp
   /usr/lib/migraphx/include/migraphx/op/pack_int4.hpp
   /usr/lib/migraphx/include/migraphx/op/pad.hpp
   /usr/lib/migraphx/include/migraphx/op/pointwise.hpp
   /usr/lib/migraphx/include/migraphx/op/pooling.hpp
   /usr/lib/migraphx/include/migraphx/op/pow.hpp
   /usr/lib/migraphx/include/migraphx/op/prefix_scan_op.hpp
   /usr/lib/migraphx/include/migraphx/op/prefix_scan_sum.hpp
   /usr/lib/migraphx/include/migraphx/op/prelu.hpp
   /usr/lib/migraphx/include/migraphx/op/quant_convolution.hpp
   /usr/lib/migraphx/include/migraphx/op/quant_dot.hpp
   /usr/lib/migraphx/include/migraphx/op/quantizelinear.hpp
   /usr/lib/migraphx/include/migraphx/op/random_seed.hpp
   /usr/lib/migraphx/include/migraphx/op/random_uniform.hpp
   /usr/lib/migraphx/include/migraphx/op/recip.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_all.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_any.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_max.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_mean.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_min.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_op.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_prod.hpp
   /usr/lib/migraphx/include/migraphx/op/reduce_sum.hpp
   /usr/lib/migraphx/include/migraphx/op/relu.hpp
   /usr/lib/migraphx/include/migraphx/op/reshape.hpp
   /usr/lib/migraphx/include/migraphx/op/reshape_lazy.hpp
   /usr/lib/migraphx/include/migraphx/op/resize.hpp
   /usr/lib/migraphx/include/migraphx/op/reverse.hpp
   /usr/lib/migraphx/include/migraphx/op/rnn.hpp
   /usr/lib/migraphx/include/migraphx/op/rnn_last_cell_output.hpp
   /usr/lib/migraphx/include/migraphx/op/rnn_last_hs_output.hpp
   /usr/lib/migraphx/include/migraphx/op/rnn_var_sl_last_output.hpp
   /usr/lib/migraphx/include/migraphx/op/rnn_variable_seq_lens.hpp
   /usr/lib/migraphx/include/migraphx/op/roialign.hpp
   /usr/lib/migraphx/include/migraphx/op/rsqrt.hpp
   /usr/lib/migraphx/include/migraphx/op/run_on_target.hpp
   /usr/lib/migraphx/include/migraphx/op/scalar.hpp
   /usr/lib/migraphx/include/migraphx/op/scan_slice.hpp
   /usr/lib/migraphx/include/migraphx/op/scatter_add.hpp
   /usr/lib/migraphx/include/migraphx/op/scatter_max.hpp
   /usr/lib/migraphx/include/migraphx/op/scatter_min.hpp
   /usr/lib/migraphx/include/migraphx/op/scatter_mul.hpp
   /usr/lib/migraphx/include/migraphx/op/scatter_none.hpp
   /usr/lib/migraphx/include/migraphx/op/scatter_op.hpp
   /usr/lib/migraphx/include/migraphx/op/scatternd_add.hpp
   /usr/lib/migraphx/include/migraphx/op/scatternd_max.hpp
   /usr/lib/migraphx/include/migraphx/op/scatternd_min.hpp
   /usr/lib/migraphx/include/migraphx/op/scatternd_mul.hpp
   /usr/lib/migraphx/include/migraphx/op/scatternd_none.hpp
   /usr/lib/migraphx/include/migraphx/op/scatternd_op.hpp
   /usr/lib/migraphx/include/migraphx/op/select_module.hpp
   /usr/lib/migraphx/include/migraphx/op/sigmoid.hpp
   /usr/lib/migraphx/include/migraphx/op/sign.hpp
   /usr/lib/migraphx/include/migraphx/op/sin.hpp
   /usr/lib/migraphx/include/migraphx/op/sinh.hpp
   /usr/lib/migraphx/include/migraphx/op/slice.hpp
   /usr/lib/migraphx/include/migraphx/op/softmax.hpp
   /usr/lib/migraphx/include/migraphx/op/sqdiff.hpp
   /usr/lib/migraphx/include/migraphx/op/sqrt.hpp
   /usr/lib/migraphx/include/migraphx/op/squeeze.hpp
   /usr/lib/migraphx/include/migraphx/op/step.hpp
   /usr/lib/migraphx/include/migraphx/op/sub.hpp
   /usr/lib/migraphx/include/migraphx/op/tan.hpp
   /usr/lib/migraphx/include/migraphx/op/tanh.hpp
   /usr/lib/migraphx/include/migraphx/op/topk.hpp
   /usr/lib/migraphx/include/migraphx/op/transpose.hpp
   /usr/lib/migraphx/include/migraphx/op/unary.hpp
   /usr/lib/migraphx/include/migraphx/op/unary_not.hpp
   /usr/lib/migraphx/include/migraphx/op/undefined.hpp
   /usr/lib/migraphx/include/migraphx/op/unique.hpp
   /usr/lib/migraphx/include/migraphx/op/unknown.hpp
   /usr/lib/migraphx/include/migraphx/op/unpack_int4.hpp
   /usr/lib/migraphx/include/migraphx/op/unsqueeze.hpp
   /usr/lib/migraphx/include/migraphx/op/where.hpp
   /usr/lib/migraphx/include/migraphx/operation.hpp
   /usr/lib/migraphx/include/migraphx/operators.hpp
   /usr/lib/migraphx/include/migraphx/optimize_module.hpp
   /usr/lib/migraphx/include/migraphx/optional.hpp
   /usr/lib/migraphx/include/migraphx/output_iterator.hpp
   /usr/lib/migraphx/include/migraphx/pad_calc.hpp
   /usr/lib/migraphx/include/migraphx/par.hpp
   /usr/lib/migraphx/include/migraphx/par_dfor.hpp
   /usr/lib/migraphx/include/migraphx/par_for.hpp
   /usr/lib/migraphx/include/migraphx/param_utils.hpp
   /usr/lib/migraphx/include/migraphx/pass.hpp
   /usr/lib/migraphx/include/migraphx/pass_manager.hpp
   /usr/lib/migraphx/include/migraphx/permutation.hpp
   /usr/lib/migraphx/include/migraphx/preallocate_param.hpp
   /usr/lib/migraphx/include/migraphx/process.hpp
   /usr/lib/migraphx/include/migraphx/program.hpp
   /usr/lib/migraphx/include/migraphx/promote_literals.hpp
   /usr/lib/migraphx/include/migraphx/propagate_constant.hpp
   /usr/lib/migraphx/include/migraphx/quantization.hpp
   /usr/lib/migraphx/include/migraphx/quantize_8bits.hpp
   /usr/lib/migraphx/include/migraphx/quantize_fp16.hpp
   /usr/lib/migraphx/include/migraphx/quantize_int4.hpp
   /usr/lib/migraphx/include/migraphx/ranges.hpp
   /usr/lib/migraphx/include/migraphx/rank.hpp
   /usr/lib/migraphx/include/migraphx/raw_data.hpp
   /usr/lib/migraphx/include/migraphx/reduce_dims.hpp
   /usr/lib/migraphx/include/migraphx/ref/context.hpp
   /usr/lib/migraphx/include/migraphx/ref/lowering.hpp
   /usr/lib/migraphx/include/migraphx/ref/target.hpp
   /usr/lib/migraphx/include/migraphx/reflect.hpp
   /usr/lib/migraphx/include/migraphx/register_op.hpp
   /usr/lib/migraphx/include/migraphx/register_target.hpp
   /usr/lib/migraphx/include/migraphx/replace_allocate.hpp
   /usr/lib/migraphx/include/migraphx/requires.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_gelu.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_low_precision.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_pooling.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_quantization.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_reduce.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_reshapes.hpp
   /usr/lib/migraphx/include/migraphx/rewrite_rnn.hpp
   /usr/lib/migraphx/include/migraphx/run_loop.hpp
   /usr/lib/migraphx/include/migraphx/sat_ops.hpp
   /usr/lib/migraphx/include/migraphx/schedule.hpp
   /usr/lib/migraphx/include/migraphx/schedule_model.hpp
   /usr/lib/migraphx/include/migraphx/serialize.hpp
   /usr/lib/migraphx/include/migraphx/shape.hpp
   /usr/lib/migraphx/include/migraphx/shape_for_each.hpp
   /usr/lib/migraphx/include/migraphx/shape_transform_descriptor.hpp
   /usr/lib/migraphx/include/migraphx/simple_par_for.hpp
   /usr/lib/migraphx/include/migraphx/simplify_algebra.hpp
   /usr/lib/migraphx/include/migraphx/simplify_dyn_ops.hpp
   /usr/lib/migraphx/include/migraphx/simplify_qdq.hpp
   /usr/lib/migraphx/include/migraphx/simplify_reshapes.hpp
   /usr/lib/migraphx/include/migraphx/source_location.hpp
   /usr/lib/migraphx/include/migraphx/split_reduce.hpp
   /usr/lib/migraphx/include/migraphx/split_single_dyn_dim.hpp
   /usr/lib/migraphx/include/migraphx/sqlite.hpp
   /usr/lib/migraphx/include/migraphx/stream_model.hpp
   /usr/lib/migraphx/include/migraphx/streamutils.hpp
   /usr/lib/migraphx/include/migraphx/stringutils.hpp
   /usr/lib/migraphx/include/migraphx/support_metric.hpp
   /usr/lib/migraphx/include/migraphx/supported_segments.hpp
   /usr/lib/migraphx/include/migraphx/target.hpp
   /usr/lib/migraphx/include/migraphx/target_assignments.hpp
   /usr/lib/migraphx/include/migraphx/tensor_view.hpp
   /usr/lib/migraphx/include/migraphx/tf.hpp
   /usr/lib/migraphx/include/migraphx/time.hpp
   /usr/lib/migraphx/include/migraphx/tmp_dir.hpp
   /usr/lib/migraphx/include/migraphx/tracer.hpp
   /usr/lib/migraphx/include/migraphx/tune_axis.hpp
   /usr/lib/migraphx/include/migraphx/type_name.hpp
   /usr/lib/migraphx/include/migraphx/type_traits.hpp
   /usr/lib/migraphx/include/migraphx/value.hpp
   /usr/lib/migraphx/include/migraphx/verify.hpp
   /usr/lib/migraphx/include/migraphx/verify_args.hpp
   /usr/lib/migraphx/include/migraphx/version.h
   /usr/lib/migraphx/lib/libmigraphx.so
   /usr/lib/migraphx/lib/libmigraphx.so.2011000
   /usr/lib/migraphx/lib/libmigraphx.so.2011000.0
   /usr/lib/migraphx/lib/libmigraphx_device.so
   /usr/lib/migraphx/lib/libmigraphx_device.so.2011000
   /usr/lib/migraphx/lib/libmigraphx_device.so.2011000.0
   /usr/lib/migraphx/lib/libmigraphx_gpu.so
   /usr/lib/migraphx/lib/libmigraphx_gpu.so.2011000
   /usr/lib/migraphx/lib/libmigraphx_gpu.so.2011000.0
   /usr/lib/migraphx/lib/libmigraphx_onnx.so
   /usr/lib/migraphx/lib/libmigraphx_onnx.so.2011000
   /usr/lib/migraphx/lib/libmigraphx_onnx.so.2011000.0
   /usr/lib/migraphx/lib/libmigraphx_ref.so
   /usr/lib/migraphx/lib/libmigraphx_ref.so.2011000
   /usr/lib/migraphx/lib/libmigraphx_ref.so.2011000.0
   /usr/lib/migraphx/lib/libmigraphx_tf.so
   /usr/lib/migraphx/lib/libmigraphx_tf.so.2011000
   /usr/lib/migraphx/lib/libmigraphx_tf.so.2011000.0
   /usr/share/doc/migraphx/LICENSE

Comment 10 Tom.Rix 2025-08-20 14:39:00 UTC
Spec URL: https://trix.fedorapeople.org/migraphx.spec
SRPM URL: https://trix.fedorapeople.org/migraphx-6.4.3-1.fc43.src.rpm

This revision bundles rocMLIR, rocMLIR is not well suited to be a standalone package.

AMD MIGraphX is AMD's graph inference engine, which
accelerates machine learning model inference.

Comment 11 Fedora Review Service 2025-08-20 19:12:15 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9450680
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2334587-migraphx/fedora-rawhide-x86_64/09450680-migraphx/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 12 Jeremy Newton 2025-09-19 15:45:45 UTC
Issues
======

- Sorry for the delay, but looks like 7.0.1 is out, so it needs to be refreshed
- Bundled(llvm-project) should actually break down the llvm subcomponents. E.g. if it bundles libllvm and libclang as a static lib, you need two lines specifying bundled(llvm) and bundled(clang)
- As well, since it bundles rocMLIR, maybe we should add that provides too? Not sure honestly, but might be good to add just in case.
- Is mlir-hal a bundle? It's not clear if this is a community project that was just thrown into the rocMLIR tree. It's not very clear why it's in externals
- License break down is needed in the spec

Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

C/C++:
[-]: Package does not contain kernel modules.
[x]: If your application is a C or C++ application you must list a
     BuildRequires against gcc, gcc-c++ or clang.
[x]: Header files in -devel subpackage, if present.
[x]: ldconfig not called in %post and %postun for Fedora 28 and later.
[x]: Package does not contain any libtool archives (.la)
[x]: Package contains no static executables.
[x]: Rpath absent or only used for internal libs.
[x]: Development (unversioned) .so files in -devel subpackage, if present.

Generic:
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
     Note: Using prebuilt packages
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "Unknown or generated", "MIT License", "*No copyright* Apache
     License 2.0", "MIT License [generated file]", "*No copyright* Apache
     License 2.0 [generated file]", "Apache License 2.0", "*No copyright*
     RealNetworks Public Source License", "GNU General Public License v2.0
     or later [generated file]", "*No copyright* Creative Commons
     Attribution 3.0", "*No copyright* GNU General Public License, Version
     3", "GNU General Public License", "BSD 3-Clause License", "*No
     copyright* Apache License", "*No copyright* MIT License", "*No
     copyright* Apache License 2.0 and/or Public domain", "Apache License
     2.0 and/or Unicode License Agreement - Data Files and Software
     (2016)", "Apache License 2.0 and/or Boost Software License 1.0", "*No
     copyright* Creative Commons CC0 1.0", "Apache License 2.0 and/or
     Unicode License Agreement - Data Files and Software (2015)", "Public
     domain", "Apache License 2.0 and/or Unicode License Agreement - Data
     Files and Software (2016) [generated file]", "ISC License", "BSD
     2-Clause License", "*No copyright* Apache License 2.0 and/or Creative
     Commons CC0 1.0", "*No copyright* Public domain", "FSF All Permissive
     License", "BSD 2-Clause with views sentence". 115741 files have
     unknown license. Detailed output of licensecheck in /var/lib/copr-
     rpmbuild/results/migraphx/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[!]: If the package is under multiple licenses, the licensing breakdown
     must be documented in the spec.
[x]: %build honors applicable compiler flags or justifies otherwise.
[!]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[-]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[!]: Package complies to the Packaging Guidelines
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[x]: The License field must be a valid SPDX expression.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package must not depend on deprecated() packages.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 0 bytes in 0 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[x]: Reviewer should test that the package builds in mock.
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[?]: Package functions as described.
[!]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
     Note: gpgverify is not used.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Fully versioned dependency in subpackages if applicable.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on debuginfo package(s).
     Note: No rpmlint messages.
[x]: Rpmlint is run on all installed packages.
     Note: No rpmlint messages.
[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.

Comment 13 Tom.Rix 2025-10-12 18:23:04 UTC
Spec URL: https://trix.fedorapeople.org/migraphx.spec
SRPM URL: https://trix.fedorapeople.org/migraphx-7.0.1-1.fc44.src.rpm

- Sorry for the delay, but looks like 7.0.1 is out, so it needs to be refreshed

%global rocm_release 7.0
%global rocm_patch 1

- Bundled(llvm-project) should actually break down the llvm subcomponents. E.g. if it bundles libllvm and libclang as a static lib, you need two lines specifying bundled(llvm) and bundled(clang)

%global bundled_llvm_version 21.0.0
# rocMLIR bundles a fork of rocm-llvm which itself is a fork of the upstream llvm
Provides:       bundled(llvm) = %bundled_llvm_version
Provides:       bundled(clang) = %bundled_llvm_version

- As well, since it bundles rocMLIR, maybe we should add that provides too? Not sure honestly, but might be good to add just in case.

From this issue
https://github.com/ROCm/rocMLIR/issues/1713
rocMLIR is never intended to be built as a stand alone project.

- Is mlir-hal a bundle? It's not clear if this is a community project that was just thrown into the rocMLIR tree. It's not very clear why it's in externals

# external/mlir-hal/CMakesLists.txt comes from
# Merge: 11d3f3f571aa 743bfaa4540c
# Author: SJW <swaters>
# Date:   Tue Jun 20 18:59:07 2023 +0000
#
#    Add 'external/mlir-hal/' from commit '743bfaa4540cd124a260643b308f0dac3fceedd9'
#
# This is commit in the same rocMLIR project, so this is confusing, open this ticket
# suggesting a move from external/mlir-hal to mlir-hal
# https://github.com/ROCm/rocMLIR/issues/2026

- License break down is needed in the spec

A lot of documenting the false positives. The licenses all have license files.
# LICENSE : MIT
# AMDMIGraphX, the main project
#
# LICENSE.rocMLIR.TXT : Apache-2.0 WITH LLVM-exception OR NCSA
# 
# LICENSE.llvm-project.TXT : Apache-2.0 WITH LLVM-exception OR NCSA
# rocMLIR/external/llvm-project/*

Comment 14 Fedora Review Service 2025-10-13 07:22:30 UTC
Created attachment 2109569 [details]
The .spec file difference from Copr build 9450680 to 9683392

Comment 15 Fedora Review Service 2025-10-13 07:22:32 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9683392
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2334587-migraphx/fedora-rawhide-x86_64/09683392-migraphx/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 16 Jeremy Newton 2025-10-21 14:19:06 UTC
Approved

Comment 17 Fedora Admin user for bugzilla script actions 2025-10-21 15:58:12 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/migraphx

Comment 18 Jorge Nolck 2025-12-02 12:09:53 UTC
I'm glad this is in fedora now. Will the python binding be included in future releases?

Comment 19 Dominik 'Rathann' Mierzejewski 2025-12-03 21:50:13 UTC
Looks like this was built in rawhide and even updated (migraphx-7.1.1-1.fc44 is the current version). Can you close this ticket?


Note You need to log in before you can comment on or make changes to this bug.