pin-server/pin-server.spec

179 lines
5.0 KiB
RPMSpec
Raw Normal View History

2022-08-25 21:14:59 +08:00
Name: pin-server
2022-12-20 17:13:03 +08:00
Version: 0.4.0
Release: 6
2022-08-25 21:14:59 +08:00
Summary: Pin (Plug-IN framework) server provides plugin APIs for compiler optimization developers to develop optimization pass.
License: Apache 2.0
URL: https://gitee.com/openeuler/pin-server
Source0: %{name}-%{version}.tar.gz
BuildRequires: gcc gcc-c++ cmake make pkgconfig grpc grpc-plugins grpc-devel protobuf-devel jsoncpp-devel
2022-12-01 09:39:24 +08:00
BuildRequires: llvm-mlir llvm-mlir-static llvm-mlir-devel llvm-devel
2022-08-25 21:14:59 +08:00
Requires: grpc protobuf
Patch1: 0001-Refactoring-Code-refactoring-of-Communication-Subsys.patch
Patch2: 0002-Refactoring-Code-refactoring-of-Communication-Subsys.patch
Patch3: 0003-Refactoring-Code-refactoring-of-Communication-Subsys.patch
Patch4: 0004-Pin-server-Add-DebugOp.patch
Patch5: 0005-Pin-server-Add-API-for-LTO-judgement.patch
Patch6: 0006-Pin-server-Fix-bug-for-BuildCallOp.patch
Patch7: 0007-Pin-server-Refactoring-array-widen-compare-into-a-cl.patch
Patch8: 0008-Pin-server-Refactoring-DEMOs-into-PluginOpt-classes.patch
Patch9: 0009-Pin-server-Support-functiontype-structtype.eg.patch
Patch10: 0010-Pin-server-Add-ComponentOp-ConstructorOp-AddressOp-F.patch
Patch11: 0011-Pin-server-Add-NopOp-EHElseOp-AsmOp-SwitchOp-LabelOp.patch
Patch12: 0012-Pin-server-Support-Vectortype.patch
Patch13: 0013-Pin-server-Fix-Definecode-name.patch
Patch14: 0014-Pin-server-Fix-AWC-pass-can-complice-can-compile-a-c.patch
Patch15: 0015-Pin-server-Bugfix-for-SwitchOp-change-it-to-terminat.patch
Patch16: 0016-Pin-server-Bugfix-for-GetFunctionById.patch
Patch17: 0017-Refactoring-Modify-API-parameters-to-improve-usabili.patch
Patch18: 0018-Build-Fix-strip-problem.patch
Patch19: 0019-Pin-server-Init-a-SimpleIPAPASS.patch
Patch20: 0020-Pin-server-Add-CGnodeOp.patch
Patch21: 0021-Pin-server-The-lto-flag-is-used-to-control-the-pass-.patch
Patch22: 0022-Pin-server-Add-support-for-decl-and-field-SetDeclNam.patch
Patch23: 0023-Pin-server-Add-StructReorderPASS-demo.patch
2022-08-25 21:14:59 +08:00
%description
Pin (Plug-IN framework) server provides plugin APIs for compiler optimization developers to develop optimization pass.
%package demo
Summary: Demo for %{name}
Requires: grpc protobuf
%description demo
A demo for pin-server
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
2022-08-25 21:14:59 +08:00
mkdir -p _build
cd _build
2023-03-03 11:44:20 +08:00
%{cmake} .. -DCMAKE_INSTALL_PREFIX=%{_usr} -DCMAKE_INSTALL_LIBDIR=%{_libdir} -DCMAKE_SKIP_RPATH=ON -DMLIR_DIR=/usr/lib64/cmake/mlir -DLLVM_DIR=/usr/lib64/cmake/llvm
2022-08-25 21:14:59 +08:00
%build
cd _build
%make_build
%install
cd _build
%make_install
mkdir -p %{buildroot}/etc/ld.so.conf.d
echo "{_libdir}" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
2023-03-03 11:44:20 +08:00
find %{_bindir} -type f -name "pin_server" -exec strip "{}" ";"
find %{_libdir} -type f -name "libMLIRPluginServer.so" -exec strip "{}" ";"
find %{_libdir} -type f -name "libMLIRServerAPI.so" -exec strip "{}" ";"
%post
/sbin/ldconfig
%postun
/sbin/ldconfig
2023-03-03 11:44:20 +08:00
2022-08-25 21:14:59 +08:00
%files
%license LICENSE
%attr(0755,root,root) %{_bindir}/pin_server
%files demo
2022-09-28 16:08:43 +08:00
%attr(0755,root,root) %{_libdir}/libpin_user.so
%attr(0755,root,root) %{_libdir}/libMLIRPluginServer.so
%attr(0755,root,root) %{_libdir}/libMLIRPluginServer.so.12
2022-12-01 09:39:24 +08:00
%attr(0755,root,root) %{_libdir}/libMLIRServerAPI.so
%attr(0755,root,root) %{_libdir}/libMLIRServerAPI.so.12
2022-09-28 16:08:43 +08:00
%attr(0644,root,root) %{_libdir}/libpin_user.sha256
%config(noreplace) /etc/ld.so.conf.d/%{name}-%{_arch}.conf
2022-08-25 21:14:59 +08:00
%changelog
* Tue Mar 07 2023 dingguangya <dingguangya1@huawei.com> - 0.4.0-6
- Type:Update
- ID:NA
- SUG:NA
- DESC:Sync patch from openEuler/pin-server
* Mon Mar 6 2023 wumingchuan <wumingchuan1992@foxmail.com> - 0.4.0-5
- Type:Update
- ID:NA
- SUG:NA
- DESC: Fix RPATH problem by ld.so.conf.d
2023-03-03 11:44:20 +08:00
* Fri Mar 3 2023 wumingchuan <wumingchuan1992@foxmail.com> - 0.4.0-4
- Type:Update
- ID:NA
- SUG:NA
- DESC: Fix STRIP & RPATH
* Sun Feb 26 2023 dingguangya <dingguangya1@huawei.com> - 0.4.0-3
- Type:Update
- ID:NA
- SUG:NA
- DESC:Sync patch from openEuler/pin-server
* Wed Feb 22 2023 dingguangya <dingguangya1@huawei.com> - 0.4.0-2
- Type:Update
- ID:NA
- SUG:NA
- DESC:Sync patch from openEuler/pin-server
2022-12-20 17:13:03 +08:00
* Tue Dec 20 2022 zhaowenyu <804544223@qq.com> - 0.4.0-1
- Type:Update
- ID:NA
- SUG:NA
- DESC:Update to v0.4.0
* Thu Dec 08 2022 benniaobufeijiushiji <linda7@huawei.com> - 0.3.0-2
- Type:Sync
- ID:NA
- SUG:NA
- DESC:Sync patch from openEuler/pin-server
2022-12-01 09:39:24 +08:00
* Thu Dec 01 2022 wumingchuan <wumingchuan1992@foxmail.com> - 0.3.0-1
- Type:Update
- ID:NA
- SUG:NA
- DESC:Update to v0.3.0
2022-09-28 16:08:43 +08:00
* Thu Sep 29 2022 wumingchuan <wumingchuan1992@foxmail.com> - 0.2.0-1
- Type:Update
- ID:NA
- SUG:NA
- DESC:Update to v0.2.0
2022-08-27 10:30:04 +08:00
* Sat Aug 27 2022 liyancheng <412998149@qq.com> - 0.1.0-2
- Type:Bugfix
- ID:NA
- SUG:NA
- DESC:Static link plg_grpc_proto
2022-08-25 21:14:59 +08:00
* Fri Aug 26 2022 liyancheng <412998149@qq.com> - 0.1.0-1
- Type:Init
- ID:NA
- SUG:NA
- DESC:Init pin-server repository