Commit graph

2,034 commits

Author SHA1 Message Date
de893a0fe5 py-mod.mk: Fix bogus # export match in commented line
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-22 14:06:09 +00:00
90ce1b5196 py-mod.mk: Fix bogus # export match on class {variable}
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-18 17:14:23 +00:00
6fb6f1608f subdirs.mk: Don't use undefined $(FIND)
subdirs.mk uses $(FIND), which is defined in defs.mk, include that.

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-11 10:12:35 +00:00
49f4b42d0c doxygen.mk: Fix broken doxygen HTML generation invocation
doxygen needs to be called as

  doxygen -w html header-file footer-file stylesheet config-file

The invocation contains the logo, though, which has no business there.
Fix that.

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-11 10:12:34 +00:00
349f1d2602 Makefile: Add target text-files-list-0
text-files-list-0 returns a zero-delimited list of text files for further
processing, which allows to correctly handle spaces in file names

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-09 08:31:32 +00:00
c575537456 defs.mk / rules.mk: Add support for PACKAGE_INSTALL_DIR
PACKAGE_INSTALL_DIR, true by default, can be used to turn off
target dir creation from a directory to avoid duplication from
other packages

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-06 14:35:59 +00:00
86ec95f6dc defs.mk / rules.mk: Add .target file support to LOCAL_SYSTEMD
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-03 12:28:15 +00:00
4e405a5d1a py-mod.mk: Add support to # extract variables
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-03 12:27:39 +00:00
e446df30e5 make/rpmdist.mk: Add target echo-pkg
Add echo-pkg target to debug packaging related variables.

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-03 12:26:34 +00:00
f9193c989d py-run.mk: Add target run.sh
Allow creation of a run.sh script, to be used from outside the make context.

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-03 12:26:33 +00:00
2989cc87c8 Makefile: JWB_SCRIPT_DIR: Add support for /opt/jw-build/bin
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-07-16 15:21:15 +00:00
90aeeaab10 rpmdist.mk: Pass absolute path to sudo rpm -U
The idea is to make passwordless RPM package installation via sudo a little
safer.

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-07-16 11:02:54 +00:00
a1bf4d9562 make: Remove variables referencing other janware-projects
jw-build is meant as a generic set of tools for building other projects, so
references to projects being built by jw-build introduce a circular dependency.
Remove those references from defs.mk and rules.mk.

Variables removed by this commit:

	BTOOLS_DIR
	FEEDFSD_DIR
	FEEDFS_DIR
	FEEDFS_GUI_DIR
	FEEDFS_OBJECTS_DIR
	FEEDFS_UTILS_DIR
	FEEDFS_WT_DIR
	JUX_SHARED_DIR
	SITE_DIR
	VALDI_DIR
	XCHANGE_DIR

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-07-16 10:41:20 +00:00
a343cf7806 pkg-install-%-deps: Protect projects from shell with quotes
Project names passed to the package manager can contain characters
not well digested by the shell. Don't let it.

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-06-30 17:01:18 +00:00
19bc4037c0 Makefile: Make list-files consider build dependencies, too
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-06-25 17:35:35 +00:00
9a5bc11cd0 py-defs.mk: Fix: mypy finds modules unter multiple paths
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-06-04 08:56:19 +00:00
391a735972 swig.mk: Follow changes swig 4.0 -> 4.2
- There's no -php8 option in swig, so stay with -php7, which
    supports "8 and above" according to the documentation

  - No <module>.php stub is generated anylonger, so don't try to
    install it

Signed-off-by: Jan Lindemann <jan@janware.com>
2024-04-30 08:00:37 +00:00
39d3a9e888 decompress.mk, defs-cpp.mk: Add make/decompress.mk
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-04-21 11:05:55 +00:00
2187d1b089 topdir.mk: Fix missing JANWARE_USER for git.janware.com login
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-01-12 14:36:38 +00:00
40ac901eb6 py-run.mk: Add test.py to EXE search path
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-01-12 14:35:39 +00:00
015072ca19 upload-defs.mk: Add support for UPLOAD_PROTOCOL
UPLOAD_PROTOCOL is a variable which can be defined by the including Makefile to
tweak the protocol an upload is done over

Signed-off-by: Jan Lindemann <jan@janware.com>
2023-12-18 13:00:43 +00:00
ae1a4dd242 svg.mk: Inkscape --export-pdf is not supported anylonger
inkscape --export-pdf is not supported anylonger, replace that with --export-filename.

Signed-off-by: Jan Lindemann <jan@janware.com>
2023-12-18 13:00:42 +00:00
069b82b3cd defs.mk: Beautify INSTALLED_RSYSLOG variable
INSTALLED_RSYSLOG contained duplicates, fix that

Signed-off-by: Jan Lindemann <jan@janware.com>
2023-12-18 13:00:40 +00:00
ce7044808f project.conf: Python -> python3 on Debian
Ubuntu 22.04 (and supposedly all Debian based distros) don't have
a package called python anylonger, and use python3 instead. Using
the unversioned [requires] sections for simplicity. Note that this
might break backwards compatibility, and should be fixed as necessary.

Signed-off-by: Jan Lindemann <jan@janware.com>
2023-07-07 08:48:00 +00:00
17851c9d11 projects.mk / py-defs.mk: Support Python 3.10
The current globbing pattern for filling the PYTHON variable doesn't
account for the fact that /usr/bin/python3.X might have more than one
digit for X, fix that

Signed-off-by: Jan Lindemann <jan@janware.com>
2022-10-04 11:05:24 +00:00
c87986624f py-mods.mk: Add missing py.clean
py.clean is not run for clean target, fix that

Signed-off-by: Jan Lindemann <jan@janware.com>
2022-10-04 11:03:29 +00:00
53491b490d debugger.mk: Remove .gdb_history with distclean target
Signed-off-by: Jan Lindemann <jan@janware.com>
2021-01-15 10:58:29 +00:00
d6e1eaf547 depend.mk: Make .o.dep.mk also depend on $(SRC_H)
This should prevent some errors during compilation.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-12-01 16:24:43 +00:00
c43fd8d0aa defs-cpp.mk: Add .hh to LOCAL_H
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-12-01 16:24:42 +00:00
cec581c8f6 vim.mk: Add variable INSTALL_VIM_SYSTEM_PATH
Add INSTALL_VIM_SYSTEM_PATH for use in including makefiles

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-12-01 16:21:21 +00:00
0596109c36 run.mk: Add variable EXE_CMD
Add variable EXE_CMD to be overriden in including makefiles

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-12-01 16:21:20 +00:00
8d2b093cc6 defs.mk: Replace tr invocations by $(TR)
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-12-01 16:21:19 +00:00
50988845d7 defs.mk: Add .hh to SRC_H
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-11-30 16:52:50 +00:00
4ebe82970f projects-dir.mk: Make INTERACTIVE=true default
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-11-30 13:32:30 +00:00
e06ead38cc swig.mk, defs-(dist|dev).mk: Fix Python 3 support
python38.pc doesn't exist on OpenSUSE Tumbleweed, python-38.pc does, so use
that naming scheme. Also allow installation with DEVELOPMENT=true, failed with
the attempt to install as root user before.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-11-21 13:09:15 +00:00
b35b87009b topdir.mk: Add pkg-manager targets
Add targets also present in projects-dir.mk:

  - Pkg-manager-refresh
  - Pkg-manager-install-build-deps
  - Pkg-manager-install-release-deps

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-11-11 16:16:42 +00:00
6846acbdf7 svg.mk: Fix inkscape command line API change on --export-png
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-08-29 14:01:42 +00:00
c37f49a170 project.conf + pkg-manager.sh: Add support for raspbian
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-06-16 17:05:03 +00:00
f3febfa460 py-defs.mk, projects.mk: Fix /usr/bin/python globbing on OpenSUSE
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-05-18 13:15:35 +00:00
caf33841b4 py-defs.mk, projects.mk: Use latest install Python
Use $(lastword $(shell ls -v /usr/bin/python[0-9]*)) for the Python version to use.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-05-16 13:22:51 +00:00
a82fa9023b py-xxx.mk: Introduce PYTHON_MAJOR
Where *.pyc files are created is decided by PYTHON_MAJOR, not PYTHON_VERSION,
so introduce it.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-05-16 13:09:16 +00:00
5e9168480a project-dirs.mk / pgit.sh: Add support for offlining projects
This adds support for the variable OFFLINE_PROJECTS in projects-dir.mk and the
PGIT_IGNORE environment variable. Both go hand in hand and do what their names
insinuate. OFFLINE_PROJECTS is initialized from EXCLUDE_FROM_BUILD, which in
turn is initialized from exclude.txt and friends.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-05-10 08:07:22 +00:00
fab119fca9 py-defs.mk: Add MYPYPATH to py-libpath target
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-26 19:04:18 +00:00
f9c7582e2b rpmdist.mk: Fix target echo-requires
echo-requires doesn\'t work because all non-pkg-% targets are disabled
in rpmdist.mk, so rename it to pkg-requires. Also add support for build
deps.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-12 06:13:31 +00:00
a404be15b9 make, scripts: Add support for static Python typechecking
This commit adds support for static typechecking with mypy.

Notable additions:

  - A new target "check" which does the type checking

  - Py-mods.mk, meant to be included from a directory containing python modules
    in subdirectories, but not being a python module itself. It makes the all
    target depend on check only if PY_RUN_CHECK_AFTER_BUILD is defined and
    true.  That's because pypy is under heavy development, and the Ubuntu 18.04
    version is too old to work for lots of the code.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-10 12:13:12 +00:00
47221aabdb defs-dirs.mk: Add support for EXTRA_SUBDIR_TARGETS
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-10 12:03:42 +00:00
477d4e2d8d rpmdist.mk: Remove make/.cache.mk with clean target
make rpm-build sometimes fails because RPM_VERSION is taken from .cache.mk. Not
sure if this commit always resolves that entirely, but it mitigates the
problem.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-05 12:51:10 +00:00
d8542717b1 py-defs.mk: Add PY_PREREQ_RUN in PYTHONPATH
This allows to specify modules in a test directory which a given module does
_not_ depend on and doesn't want to depend on.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-05 12:51:08 +00:00
3e99fe51cd projects-dir.mk: Don't do git-pull.done before git-pull-%
Use cvs-update.done instead of git-pull.done as prerequisite
of git-pull-%, because otherwise broken remote own repos
might not be recoverable

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-03-23 08:13:14 +00:00
640dc4ffad git-submod.mk: Check a couple of variables before taking action
Add checks to the git-init-submod-remote target, to keep it from
starting a job which fails halfway through

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-02-25 10:39:24 +00:00