qrpm 0.3.3 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/exe/qrpm +51 -4
  3. data/lib/qrpm/version.rb +1 -1
  4. data/lib/qrpm.rb +5 -6
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 85d9882ee64a9c241212a8c7d83b0cb8c326ee64c1dcb53bf0950c216d41c868
4
- data.tar.gz: 877340a9c37016f4e8c5750dab7600250ed1a0a677d83e914104c0358e97587e
3
+ metadata.gz: 46adf6022a282921ffec7babe5d51a630265fdc006fe6a8f2108b05175d3801f
4
+ data.tar.gz: 152bedc386c3b1f80d4727c89bb2eda22aea5f98dec9d4bc505eb7484419e93c
5
5
  SHA512:
6
- metadata.gz: fa2a874c63f91d7d00df124413ddc2c85495031e6f73c577b3892ca4ec18f4794a548aed99a41fca307c3f5f79b200166d52fb1e2439d29304720a890494ed9d
7
- data.tar.gz: 677aceb85dcfc033f83df21a3bc1b8b501747855f3d42dfbf75b5c6dfea7bfc5eb9e26592a4261e751d1b461d75d23e1c1b7c5f547da0b86d38423f5e8ae8c49
6
+ metadata.gz: 5c97e24da7f3bde2793c624300c93ccd8197cae6f8c204e708663a2549c9c718cbd64f1a741c8a576c0aac65af8bcf9272eb633dafe3ca7def268a92a5bae73a
7
+ data.tar.gz: aab20b330f1968edeac8e4eeb96ba2a1953cb688f74b8274804d7e9c1b8b53ab023552338b438d13ebcdae32f2cf52837d4a9527284349440d55b7c677450601
data/exe/qrpm CHANGED
@@ -55,6 +55,49 @@ begin
55
55
 
56
56
  BUILT-IN VARIABLES
57
57
 
58
+ There are the following built-in variables. They are listed below with their
59
+ default values:
60
+
61
+ rootdir /
62
+ rootconfdir /etc
63
+ rootexecdir /usr
64
+ rootlibdir /usr
65
+ rootconstdir /usr/share
66
+ rootdocdir /usr/share
67
+ rootdatadir /var
68
+
69
+ sysetcdir /etc
70
+ sysbindir /usr/bin
71
+ syssbindir /usr/sbin
72
+ syslibdir /usr/lib64
73
+ syslibexecdir /usr/libexec
74
+ syssharedir /usr/share
75
+ sysdocdir /usr/share/doc
76
+ sysvardir /var/lib
77
+ sysspooldir /var/spool
78
+ sysrundir /var/run
79
+ syslockdir /var/lock
80
+ syscachedir /var/cache
81
+ syslogdir /var/log
82
+ systmpdir /tmp
83
+
84
+ pcketcdir /etc/NAME
85
+ pckbindir /usr/bin
86
+ pcksbindir /usr/sbin
87
+ pcklibdir /usr/lib64/NAME
88
+ pcklibexecdir /usr/libexec/NAME
89
+ pcksharedir /usr/share/NAME
90
+ pckdocdir /usr/share/doc/NAME
91
+ pckvardir /var/NAME
92
+ pckspooldir /var/spool/NAME
93
+ pckrundir /var/run/NAME
94
+ pcklockdir /var/lock/NAME
95
+ pckcachedir /var/cache/NAME
96
+ pcklogdir /var/log/NAME
97
+ pcktmpdir /tmp/NAME
98
+
99
+ Note that there are no package specific directories for bin and sbin
100
+
58
101
  INSTALLATION DIRECTORIES
59
102
 
60
103
  OPTIONS
@@ -126,8 +169,12 @@ begin
126
169
  currdir = overrides["currdir"] = File.expand_path(overrides["currdir"] || Dir.getwd)
127
170
  qrpmdir = overrides["qrpmdir"] = File.expand_path(overrides["qrpmdir"] || opts.directory || ".")
128
171
 
172
+ # Check builddir (todo: also currdir?)
173
+ File.directory?(currdir) or error "Can't find '#{currdir}'"
174
+ File.directory?(qrpmdir) or error "Can't find '#{qrpmdir}'"
175
+
129
176
  # Compute builddir
130
- if opts.builddir? && opts.force_builddir?
177
+ if opts.builddir? && opts.force_builddir?
131
178
  ShellOpts.error "Can't use both --builddir and --force-builddir"
132
179
  elsif opts.builddir? || opts.force_builddir?
133
180
  builddir = opts.builddir || opts.force_builddir || "builddir"
@@ -139,7 +186,7 @@ begin
139
186
  end
140
187
 
141
188
  # Check if repository is clean
142
- opts.force? || opts.dump? || `git status --porcelain | grep -v '??' 2>/dev/null` == "" or
189
+ opts.force? || opts.dump? || `cd #{qrpmdir}; git status --porcelain | grep -v '??' 2>/dev/null` == "" or
143
190
  ShellOpts.error "Repository is dirty"
144
191
 
145
192
  # Check configuration file
@@ -156,8 +203,8 @@ begin
156
203
  Dir.chdir(qrpmdir)
157
204
 
158
205
  # Parse QRPM configuration file. Include paths are still resolved with the
159
- # context of the original directory while filesystem paths are relative to
160
- # the source directory
206
+ # context of the original directory if -C is used while filesystem paths are
207
+ # relative to the source directory
161
208
  compiler = Qrpm::Compiler.new(overrides)
162
209
  qrpm = compiler.compile(conf)
163
210
  rpm = qrpm.rpm
data/lib/qrpm/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Qrpm
4
- VERSION = "0.3.3"
4
+ VERSION = "0.3.5"
5
5
  end
data/lib/qrpm.rb CHANGED
@@ -68,8 +68,8 @@ module Qrpm
68
68
  syssbindir: "$rootexecdir/sbin",
69
69
  syslibdir: "$rootlibdir/lib64",
70
70
  syslibexecdir: "$rootexecdir/libexec",
71
- syssharedir: "$rootconstdir/$pckdir", # Always a subdir of /usr/share
72
- sysdocdir: "$syssharedir",
71
+ syssharedir: "$rootconstdir",
72
+ sysdocdir: "$syssharedir/doc",
73
73
  sysvardir: "$rootdatadir/lib",
74
74
  sysspooldir: "$rootdatadir/spool",
75
75
  sysrundir: "$rootdatadir/run",
@@ -79,11 +79,10 @@ module Qrpm
79
79
  systmpdir: "/tmp" # Always /tmp because of security
80
80
  }
81
81
 
82
- # There are no package-specific versions of bindir and sbindir
83
82
  PACKAGE_DIRS = {
84
83
  pcketcdir: "$sysetcdir/$pckdir",
85
- pckbindir: "$sysbindir", # No subdir
86
- pcksbindir: "$syssbindir", # No subdir
84
+ pckbindir: "$sysbindir", # No package-specific directory
85
+ pcksbindir: "$syssbindir", # No package-specific directory
87
86
  pcklibdir: "$syslibdir/$pckdir",
88
87
  pcklibexecdir: "$syslibexecdir/$pckdir",
89
88
  pcksharedir: "$syssharedir/$pckdir",
@@ -102,7 +101,7 @@ module Qrpm
102
101
  DEFAULTS = {
103
102
  "name" => "$(basename $PWD)",
104
103
  "summary" => "The $name RPM package",
105
- "version" => "$(cd ${{srcdir}} && git tag -l 2>/dev/null | tail -1 | tr -dc '.0-9' || echo 0.0.0)",
104
+ "version" => "$(cd ${{srcdir}} && git tag -l 2>/dev/null | sort -V | tail -1 | tr -dc '.0-9' || echo 0.0.0)",
106
105
  "description" => "$summary",
107
106
  "release" => "1",
108
107
  "license" => "GPL",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qrpm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Claus Rasmussen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-08-15 00:00:00.000000000 Z
11
+ date: 2024-01-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: shellopts