blob: 138087dbc87cd8b30babecdb32c09152a98ad218 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
# 软件包名称
Name: Document_Classification
# 软件包版本号
Version: 1.0.0
# 发布号,每次发布时递增,初始可以为 1
Release: 1%{?dist}
# 软件包的简短描述,简要说明软件包的功能
Summary: This is a sample package for [文件分类]
# 软件包的许可证,修改为你的软件包所使用的许可证(如 GPL、MIT 等)
License: GPLv3
# 软件包的主页 URL,如果有,修改为实际的项目网址
URL: https://gitee.com/crayon-xiaoxin-xin/XiaoWu.git
# 定义软件包的原始源代码的获取位置和文件名格式
Source0: %{name}-%{version}.tar.gz
# 生成调试相关的软件包内容
%define debug_package %{nil}
# 软件包的详细描述
%description
This is a more detailed description of my_package.
It includes [文件分类,将一个路径下的文件夹和子文件夹遍历,按照文件类型移动到file、doc、exe、txt,其中file属于其他文件].
# 准备阶段的命令,通常用于解压源代码等操作
%prep
echo "开始进入%prep阶段..."
echo "当前工作目录:$(pwd)"
if [! -r "/var/tmp/rpm-tmp.1gZrjF" ]; then
echo "没有权限读取 /var/tmp/rpm-tmp.1gZrjF 文件,无法处理脚本内容,构建可能失败。"
exit 1
fi
script_content=$(cat /var/tmp/rpm-tmp.1gZrjF)
if [! -w "/var/tmp/rpm-tmp.1gZrjF" ]; then
echo "没有权限写入 /var/tmp/rpm-tmp.1gZrjF 文件,无法修正脚本内容,构建可能失败。"
exit 1
fi
corrected_content=${script_content//$'\r'/}
echo "$corrected_content" > /var/tmp/rpm-tmp.1gZrjF
umask 022
cd /builddir/build/BUILD
# 检查源码包是否存在,假设源码包按规范命名为Document_Classification-1.0.0.tar.gz,可按实际调整
if [! -f "/builddir/build/SOURCES/Document_Classification-1.0.0.tar.gz" ]; then
echo "源码包 Document_Classification-1.0.0.tar.gz 不存在,构建将会失败。"
exit 1
fi
# 简单验证源码包文件名格式(这里仅示例检查是否以.tar.gz结尾,可根据实际更细化要求调整)
if [[! "/builddir/build/SOURCES/Document_Classification-1.0.0.tar.gz" =~ \.tar\.gz$ ]]; then
echo "源码包文件名格式不符合要求,构建可能失败。"
exit 1
fi
%autosetup
echo "已进入的源文件目录:$(pwd)"
# 构建阶段的命令,根据项目的实际构建过程进行修改
%build
cjpm build
# 安装阶段的命令,指定软件包的安装路径和要安装的文件
%install
mkdir -p %{buildroot}/root/Document_Classification/bin
mkdir -p %{buildroot}/root/Document_Classification/conf
cp -r %{_builddir}/%{name}-%{version}/target/release/bin/* %{buildroot}/root/Document_Classification
# 定义软件包中的文件和目录的权限设置
%files
/root/Document_Classification/bin/*
|