xref: /openbsd-src/share/man/man5/qmake-module.5 (revision 35cdf233fa1bb4cd744b067779fcb1e207a73b52)
1.\"	$OpenBSD: qmake-module.5,v 1.4 2022/11/27 15:27:17 kn Exp $
2.\"
3.\" Copyright (c) 2008 Marc Espie
4.\"
5.\" All rights reserved.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
17.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
20.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26.\"
27.Dd $Mdocdate: November 27 2022 $
28.Dt QMAKE-MODULE 5
29.Os
30.Sh NAME
31.Nm qmake-module
32.Nd devel/qmake port module
33.Sh DESCRIPTION
34This manual page documents the behavior of setting
35.Li MODULES=devel/qmake
36in the
37.Xr ports 7
38tree.
39.Pp
40This module automates usage of qmake, independently of the actual
41version of Qt being used.
42This module requires that one of the
43.Pa x11/qt*
44to be used as well.
45.Pp
46If
47.Ev CONFIGURE_STYLE
48was not set before, sets its value to
49.Sq qmake .
50If
51.Ev CONFIGURE_STYLE
52contains
53.Sq qmake
54the module will define each of the
55.Ar do-build
56and
57.Ar do-install
58targets, unless port already defines one; also,
59.Ev SEPARATE_BUILD
60will be set to
61.Sq Yes
62unless it's already set to some value.
63Also, unless
64.Ev NO_TEST
65is set, the
66.Ar do-test
67target will be defined.
68.Pp
69The following variables could be used in qmake-based ports:
70.Bl -tag -width 1234
71.It Ev MODQMAKE_ARGS
72Additional arguments for qmake invocation.
73The module already defines some.
74.It Ev MODQMAKE_INSTALL_ROOT
75Root directory for fake install.
76Normally, it's a WRKINST, but some (broken) ports require another value,
77like PREFIX.
78.It Ev MODQMAKE_PROJECTS
79List of qmake project files to be used, relative to WRKSRC.
80Directories containing those projects could be used as well,
81see qmake documentation for details.
82Defaults to
83.Sq \&. ,
84which means the (only) project in WRKSRC directory.
85.It Ev MODQMAKE_RECURSIVE
86If
87.Sq Yes ,
88then qmake will be run recursively during configure stage;
89otherwise, only projects mentioned in
90.Ev MODQMAKE_PROJECTS
91will be processed during configure stage, and their descendants will
92be visited during main build phase.
93Sometimes a qmake project processing depends on files generated
94by other qmake project during build, and recursive builds break this.
95Defaults to
96.Sq Yes .
97.It Ev MODQMAKE_build
98Actual commands that module will use to build all
99.Ev MODQMAKE_PROJECTS
100provided.
101To be used in complicated cases, when port have to use its own
102.Ar do-build
103target or mix different
104.Ev CONFIGURE_STYLE
105values.
106.It Ev MODQMAKE_install
107Same as for
108.Ev MODQMAKE_build ,
109but used in
110.Ar do-install
111stage.
112.El
113.Sh SEE ALSO
114.Xr port-modules 5
115