summaryrefslogtreecommitdiff
path: root/python-compiler-identification.spec
blob: 0a4b90283b5b4ed4884e1cd915a38e628d2276f9 (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
%global _empty_manifest_terminate_build 0
Name:		python-compiler-identification
Version:	1.0.3
Release:	1
Summary:	Identifying the properties of a C/C++ compiler, such as type and version
License:	Apache Software License
URL:		https://github.com/yugabyte/compiler-identification
Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/bf/1a/86c428cffb62f7652249d69b0c30cdc46f9c24f6d53bfaa8cb506bea8528/compiler-identification-1.0.3.tar.gz
BuildArch:	noarch


%description
# compiler-identification

https://pypi.org/project/compiler-identification/

A useful tool in identifying the version of C/C++ compilers, mainly various versions of GCC and
Clang present in various Linux districtions and versions of macOS.

Usage (an ipython session shown):

```
In [1]: from compiler_identification import identify_compiler

In [2]: identification = identify_compiler('clang')

In [3]: identification
Out[3]: <compiler_identification.CompilerIdentification family='clang' version_str='12.0.5' full_version_output_str='Apple clang version 12.0.5 (clang-1205.0.22.9)\nTarget: x86_64-apple-darwin20.3.0\nThread model: posix\nInstalledDir: /Library/Developer/CommandLineTools/usr/bin' parsed_version=<Version('12.0.5')> compiler_path='/usr/bin/clang' at 0x7f904a95e970>

In [4]: identification.parsed_version
Out[4]: <Version('12.0.5')>
```

The `parsed_version`, which is a `Version` instance from the [`packaging`](https://pypi.org/project/packaging/) module, allows to do proper version comparisons. See https://packaging.pypa.io/en/latest/version.html for more details.

%package -n python3-compiler-identification
Summary:	Identifying the properties of a C/C++ compiler, such as type and version
Provides:	python-compiler-identification
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-compiler-identification
# compiler-identification

https://pypi.org/project/compiler-identification/

A useful tool in identifying the version of C/C++ compilers, mainly various versions of GCC and
Clang present in various Linux districtions and versions of macOS.

Usage (an ipython session shown):

```
In [1]: from compiler_identification import identify_compiler

In [2]: identification = identify_compiler('clang')

In [3]: identification
Out[3]: <compiler_identification.CompilerIdentification family='clang' version_str='12.0.5' full_version_output_str='Apple clang version 12.0.5 (clang-1205.0.22.9)\nTarget: x86_64-apple-darwin20.3.0\nThread model: posix\nInstalledDir: /Library/Developer/CommandLineTools/usr/bin' parsed_version=<Version('12.0.5')> compiler_path='/usr/bin/clang' at 0x7f904a95e970>

In [4]: identification.parsed_version
Out[4]: <Version('12.0.5')>
```

The `parsed_version`, which is a `Version` instance from the [`packaging`](https://pypi.org/project/packaging/) module, allows to do proper version comparisons. See https://packaging.pypa.io/en/latest/version.html for more details.

%package help
Summary:	Development documents and examples for compiler-identification
Provides:	python3-compiler-identification-doc
%description help
# compiler-identification

https://pypi.org/project/compiler-identification/

A useful tool in identifying the version of C/C++ compilers, mainly various versions of GCC and
Clang present in various Linux districtions and versions of macOS.

Usage (an ipython session shown):

```
In [1]: from compiler_identification import identify_compiler

In [2]: identification = identify_compiler('clang')

In [3]: identification
Out[3]: <compiler_identification.CompilerIdentification family='clang' version_str='12.0.5' full_version_output_str='Apple clang version 12.0.5 (clang-1205.0.22.9)\nTarget: x86_64-apple-darwin20.3.0\nThread model: posix\nInstalledDir: /Library/Developer/CommandLineTools/usr/bin' parsed_version=<Version('12.0.5')> compiler_path='/usr/bin/clang' at 0x7f904a95e970>

In [4]: identification.parsed_version
Out[4]: <Version('12.0.5')>
```

The `parsed_version`, which is a `Version` instance from the [`packaging`](https://pypi.org/project/packaging/) module, allows to do proper version comparisons. See https://packaging.pypa.io/en/latest/version.html for more details.

%prep
%autosetup -n compiler-identification-1.0.3

%build
%py3_build

%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
	find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
	find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
	find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
	find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%files -n python3-compiler-identification -f filelist.lst
%dir %{python3_sitelib}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.3-1
- Package Spec generated