Name: UNT
Version: 1.0
Release: 9
Summary: UDF native tool
License: MulanPSL-2.0
URL: https://gitee.com/openeuler/UNT.git
Source0: https://gitee.com/openeuler/UNT/repository/archive/%{name}-v%{version}.tar.gz
Source1: maven-resources-plugin-2.6.jar
BuildRequires: maven
BuildArch: noarch
%description
UDF native tool can convert java code to native code,
and then compile native code to native binary.
%prep
%setup -q -n %{name}
mkdir -p %{_builddir}/.m2/repository/org/apache/maven/plugins/maven-resources-plugin/2.6/
cp %{SOURCE1} %{_builddir}/.m2/repository/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.jar
cat > %{_builddir}/.m2/repository/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.pom << 'EOF'
4.0.0
org.apache.maven.plugins
maven-resources-plugin
2.6
maven-plugin
Apache Maven Resources Plugin
EOF
cat > %{_builddir}/.m2/repository/org/apache/maven/plugins/maven-resources-plugin/maven-metadata-local.xml << 'EOF'
org.apache.maven.plugins
maven-resources-plugin
2.6
2.6
2.6
20230101000000
EOF
%build
# 使用自定义设置文件运行 Maven 构建
cat > %{_builddir}/settings.xml << 'EOF'
%{_builddir}/.m2/repository
EOF
# mvn install:install-file -Dfile=%{SOURCE1} -DgroupId=org.apache.maven.plugins -DartifactId=maven-resources-plugin -Dversion=2.6 -Dpackage=jar
mvn -s %{_builddir}/settings.xml package -DskipTests
%install
mkdir -p %{buildroot}/opt/udf-trans-opt/
mkdir -p %{buildroot}/usr/bin
tar -zxf %_builddir/%{name}/unt-translator/target/unt-translator-1.0-bin.tar.gz -C %{buildroot}/opt/udf-trans-opt/
install -m 0640 %_builddir/%{name}/unt-scanner/target/unt-scanner-1.0-bin.jar %{buildroot}/opt/udf-trans-opt/
install -m 0550 %_builddir/%{name}/script/native_udf.py %{buildroot}/usr/bin
%clean
rm -rf %{buildroot}
%postun
rm -rf /opt/udf-trans-opt/udf-translator
rm -rf /opt/udf-trans-opt/unt-scanner-1.0-bin.jar
rm -rf /usr/bin/native_udf.py
%files
%defattr(-,root,root)
%attr(0640,root,root) /opt/udf-trans-opt/udf-translator/*
%attr(0640,root,root) /opt/udf-trans-opt/unt-scanner-1.0-bin.jar
%attr(0550,root,root) /usr/bin/native_udf.py
%changelog
* Wed Aug 27 2025 yuyufeng - 1.0-9
- add kaccjson macro for annotation and config json serialize
* Wed Aug 20 2025 yuyufeng - 1.0-8
- limited support for field reflection and dynamic invoke
* Mon Jun 16 2025 liuchang - 1.0-7
- fix array to enhance performance and ut of array init to current version
* Thu Jun 12 2025 yuyufeng - 1.0-6
- fix native_udf.py bug, add support for primitive type Array and add ut
* Sat May 31 2025 yuyufeng - 1.0-5
- add exception throw when translator fail and fix ignoreMethod expection bug
* Wed May 28 2025 yuyufeng - 1.0-4
- clean code and improve string interface
* Thu May 22 2025 yuyufeng - 1.0-3
- improve %postun files remove
* Thu May 22 2025 yuyufeng - 1.0-2
- add test and change log path
* Tue May 20 2025 hejingxian - 1.0-1
- package init