document more thoroughly the special status of modules gnu, imake, perl5
authorespie <espie@openbsd.org>
Tue, 11 Apr 2017 11:01:28 +0000 (11:01 +0000)
committerespie <espie@openbsd.org>
Tue, 11 Apr 2017 11:01:28 +0000 (11:01 +0000)
(for historical reasons)

okay aja@

share/man/man5/port-modules.5

index 12709a4..718c22a 100644 (file)
@@ -1,4 +1,4 @@
-.\"    $OpenBSD: port-modules.5,v 1.215 2017/04/08 13:29:37 ajacoutot Exp $
+.\"    $OpenBSD: port-modules.5,v 1.216 2017/04/11 11:01:28 espie Exp $
 .\"
 .\" Copyright (c) 2008 Marc Espie
 .\"
@@ -24,7 +24,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd $Mdocdate: April 8 2017 $
+.Dd $Mdocdate: April 11 2017 $
 .Dt PORT-MODULES 5
 .Os
 .Sh NAME
@@ -48,6 +48,22 @@ variable of
 Some of these modules correspond to basic mechanisms which are not
 always needed, such as GNU autoconf, or perl5.
 .Pp
+For convenience, setting
+.Ev CONFIGURE_STYLE
+in a port's main Makefile is enough to get perl5 or autoconf support, but
+.Ar gnu ,
+.Ar imake
+and
+.Ar perl5
+are actually modules, and there is some glue in
+.Xr bsd.port.mk 5
+that magically adds the required module in that case.
+This doesn't work when parsing modules.
+For instance, if you set
+.Li CONFIGURE_STYLE=gnu
+in a module, you also need to
+.Li MODULES += gnu .
+.Pp
 Other modules correspond to shortcuts for using some other ports as
 dependencies without needing to hardcode too much, such as
 the qt ports.