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