Commit graph

77 commits

Author SHA1 Message Date
20b14c109d pkg.sh: Determine upload dir from jw-pkg.sh distro info
A compiled release package is currently uploaded to a fixed
directory, determine it dynamically for every distro seperately.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-03-02 16:10:34 +00:00
2f157db18d pkg.sh: Replace get-os.sh by pkg.py distro info
Remove get-os.sh from pkg.sh to reduce redunancy.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-03-02 12:55:36 +00:00
1da00283d1 jw.pkg.cmds.projects.CmdOsCascade: Remove
CmdOsCascade is superseeded by CmdInfo. Use the latter and retire the
former.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-03-02 12:55:36 +00:00
ca7a5a5265 pkg.sh: Evaluate pkg.run on Debian
pkg.run is not evaluated on Debian, fix that. For now it's hacked
into pkg.sh, which is bound to be replaced by Python. The limited
hassle is still worth the detour.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-02-28 13:15:05 +00:00
78d49edfeb pkg.sh: Fix rpmbuild %attr(links) warning
dc945537 (pkg.sh log-install: Log %attr(0777, ...) for links) fixed
packaging symlink for Debian-based distros, but produces a warning on
RPM based distros: Links may not have explicit attributes, so go back
to not specifying them at all for RPM.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-02-18 11:00:35 +01:00
c84e119e6f pkg.sh milk-install-log: Clean up Debian filters
Among other atrocities, the Debian path filter contains some horrible
redundancies in an sed regular expression. Be a little less redundant
about it.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-02-15 16:04:59 +00:00
dc94553732 pkg.sh log-install: Log %attr(0777, ...) for links
Not logging any attribute for links, as it's now, breaks Debian's
parser. So, log %attr(0777, $owner, $mode). This fixes the parser on
the Debian side and hopefully leaves the RPM side intact.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-02-15 16:04:45 +00:00
93c24c657d pkg.sh log-install: -f package-format is ignored
pkg.sh log-install ignores the -f option passed to pkg.sh, and always
defaults to "rpm". Fix that.

Signed-off-by: Jan Lindemann <jan@janware.com>
2026-02-15 16:04:39 +00:00
e42e3b783b pkg.sh build: Support -a / --include-vcs-files
pkg.sh by default doesn't pack up version control metadata. Passing
-a or --include-vcs-files includes them in the source packages.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-12-01 11:31:54 +01:00
9217d38964 Everywhere: Rename package "jw-build" to "jw-pkg"
jw-build doesn't stop at building software, packaging it afterwards
is also a core feature, so this commit gives the package a better
name.

The commit replaces strings s/jw-build/jw-pkg/ in text files and file
names. Fallout to the functionality is fixed, variable names are left
as they are, though. To be adjusted by later commits.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-28 13:35:56 +01:00
82eb80979d bin, make, scripts: Re-add files necessary for packaging jw-build
Re-add all files necessary to package jw-build itself, i.e.
sucessfully run make pkg-rebuild-reinstall. This adds 1892 lines of
code.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-14 11:22:50 +01:00
bc883deed4 Everywhere: Remove everything non-essential for "make clean all"
This commit removes everything not strictly necessary for running
"make clean all" inside jw-build.

packaging jw-devtest. This cuts the repo down from 24077 to 4725
lines of code.

The idea is to

1) Further remove bloat from the remaining bits

2) Re-add what's necessary to build and package other essential repos.

   The decision should be based on whether or not jw-build can also be
   useful in a non-janware context.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-14 15:02:56 +01:00
b633e9637c pkg.sh: Filter out system installation directories below /usr
System installation directories should not belong to jw-build-generated
packages, so exclude them via regex.

Signed-off-by: Jan Lindemann <jan@janware.com>
2021-09-26 19:14:58 +00:00
b3c093fd94 pkg.sh: Don't exclude .in files from source package
Building with .in files should work just fine, so don't exclude them anylonger.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-12-01 16:21:22 +00:00
bdd66dbc26 Everywhere: Rename MOD_SCRIPT_DIR -> JWB_SCRIPT_DIR
Follow name change of MODDIR -> JWBDIR.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-29 21:45:24 +00:00
305cc0a1a7 pkg.sh: Remove some (not all) unnecessarily forked processes
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-16 11:19:31 +00:00
18e0fe0d28 pkg.sh: Default wrappers installed with log-install -L to Python 3
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-15 19:05:47 +00:00
34fbea1876 pkg.sh log-install: Fix -A option
Switch -A was passed with a bogus : to getopt

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-02-07 11:04:46 +00:00
019dd47c02 pkg.sh log-install: Fix link-in target for shared libraries
Shared libraries were detected as executables, which is true in a way, but
still the log-install target shouldn't wrap them into scripts.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-02-05 15:02:36 +00:00
f28afc777c make, scripts: Add support for [pkg.provides.xxx]
Add Support for manually specifying arbitrary package capabilities in
project.conf.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-01-07 14:34:58 +00:00
98e7606029 defs.mk, rpmdist.mk, pkg.sh: Fix detection of rpmbuild path
$HOME/rpmbuild was not correctly assumed as build directory if it doesn't exist.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-01-03 20:00:01 +00:00
00a52c9039 pgit.sh: Don't pull fetchuser into current master, only fetch
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-01-03 12:10:00 +00:00
a8b958b7cf pkg.sh: More tweaks to filter_devel
filter_devel now identifies more intricate directory structures below /include/
as belonging into development packages. The filter is dynamically amended,
based on whether or not the directories contain .h or .hpp files.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-27 16:59:30 +00:00
b67c221eaa pkg.sh: Make filter_devel more specific
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-23 13:32:09 +00:00
182053be29 pkg.sh: Fix project hash value calculation
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-16 18:41:54 +00:00
f4efde3377 $(TOPDIR), make, scripts: Ftp.jannet.de / ftp.janware.com -> pkg.janware.com
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-16 16:11:11 +00:00
74a62bfda9 $(TOPDIR), make, scripts: Rename LAST_RPM_VERSION to RELEASES
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-16 11:07:20 +00:00
e827efadd5 make, scripts: Replace list-vcs-files.sh by scm.sh ls-files
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-16 10:30:49 +00:00
9b532fd601 make, scripts: Rename list-cvs-files.sh to list-vcs-files.sh
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-13 18:15:12 +00:00
536d128f91 make, scripts: Remove /inst-source from RPM installation sources
Remove /inst-source from RPM installation sources, following
that same action within all repositories and mirrors

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-13 10:04:58 +00:00
6e14ee930f pkg.sh: Fix target directory layout for CentOS
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-13 10:03:19 +00:00
d78768b8b8 rpmdist.mk, pkg.sh: Fix whitespace handling in HASH file generation
Generating the $(TOPDIR)/HASH file produced a warning for every
package file containing a whitespace character. Hopefully, this
build fixes the problem, by working on zero-delimited lists
of file names

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-11-21 13:47:38 +00:00
adb18caa13 make, scripts: git submodule update --init --recursive
Consistently run git submodule update with --init --recursive.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-11-18 18:31:30 +00:00
38fd8e7d4d pkg.sh log-install: Fix bogus -a option replacement
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-11-09 11:09:57 +00:00
ce08110e2b pkg.sh log-install: Fix handling of links
- Links are installed with file attributes
  - Sometimes links are wrongly logged as directories

Fix that.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-21 20:23:32 +00:00
e37e7f91c1 pkg.sh and defs.mk: Add pkg.sh install-log -N, fix links
pkg.sh install-log now supports a -N option, meaning no-log-directories. This
installs directories, but doesn't log then in the install log, effectively
excluding them from being packaged. This is necessary for directories provided
by other packages. -N can be activated by adding LOG_INSTALL_EXTRA_OPTS += -N
to a Makefile, see changes in defs.mk.

pgk.sh install-log now also omits addition of %attr tags to symbolic links.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-18 12:02:23 +00:00
0371cec047 create-mkspec.sh, pkg.sh: Fix RPM specs missing files from devel packages
This commit makes pkg.sh and create-mkspec.sh check, if a -devel package is
specified, and if not, adds the contents of the -devel file list from the
install log to the -run file list.

This also involves adding a [-s subpackage] option to the
pkg.sh milk-install-log command.

Not implemented for debian packages.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-08-31 11:19:44 +00:00
5f6e494743 link-in target: Propagate python script error from pkg.sh
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-10-04 11:01:15 +00:00
92040c66e7 make, scripts: Preserve modification time on installation
Implemented -p switch on pkg.sh log-install and used it on standard
installation rules.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-08-31 19:40:39 +00:00
a01cfc4158 pkg.sh: Fix log-install invocation line
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-26 16:44:43 +00:00
a69a3938f2 pkg.sh: Use readlink -fm instead of realpath -m
Seems to be more universally available

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-26 11:45:45 +00:00
d296839c2c pkg.sh log-install -W: Make python wrapper around python scripts
Otherwise calls with /usr/bin/python /opt/package/bin/myscript.py fail with
syntax error.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-21 15:29:52 +00:00
a4ef394a95 pkg.sh: Add option -W to log-install
This is like log-install -W, except that it installs a wrapper
script instead of a link for executables

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-19 11:30:08 +00:00
3082150b05 pkg.sh Fix: Overwrote LAST_RPM_VERSION entirely
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-29 21:24:32 +00:00
7efb9bd768 pkg.sh: Don't try to upload non-existing devel package
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-28 14:30:37 +00:00
c42e386c76 doc, make, scripts: Add support for [pkg.conflicts.xxx]
Since the packaging machinery is pretty complicated, the information about
conflicting packages had to be passed through many APIs. The last commit
contained a patch which is left in the tree to have it in one file, it actually
is identical to this commit's diff, though. Git would save me that quirk.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-26 10:34:22 +00:00
3961d47f07 conf/jcs, make, scripts: Rename jw-build's get_os.sh to get-os.sh
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-12 09:35:57 +00:00
2bd14f63a6 pkg.sh: Add RSYNC_SSH to environment
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-21 09:48:29 +00:00
1cb1b90d7a pkg.sh: Don't run sudo rpm -U if running as root already
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-20 19:51:57 +00:00
ed551c59b8 pkg.sh: Beautify logging
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-19 17:19:28 +00:00