Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Apr 2025 07:37:01 GMT
From:      Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: d4549ee1c5e1 - main - Mk/Uses: Update lazarus.mk framework
Message-ID:  <202504210737.53L7b1bx095737@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by acm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=d4549ee1c5e1eafc6a0f830884f5f605bd862afc

commit d4549ee1c5e1eafc6a0f830884f5f605bd862afc
Author:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
AuthorDate: 2025-04-21 07:35:42 +0000
Commit:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
CommitDate: 2025-04-21 07:36:53 +0000

    Mk/Uses: Update lazarus.mk framework
    
    - Add gtk3 support
    - Other minor improvements
---
 Mk/Uses/lazarus.mk | 46 +++++++++++++++++++++++++++++++++-------------
 1 file changed, 33 insertions(+), 13 deletions(-)

diff --git a/Mk/Uses/lazarus.mk b/Mk/Uses/lazarus.mk
index e8aa3635450c..afcf8b47c79d 100644
--- a/Mk/Uses/lazarus.mk
+++ b/Mk/Uses/lazarus.mk
@@ -2,11 +2,14 @@
 #
 # Feature:      lazarus
 # Usage:        USES=lazarus
-# Valid ARGS:   (none), gtk2, qt5, qt6, flavors
+# Valid ARGS:   (none), gtk2, gtk3, qt5, qt6, flavors
 #
 # (none)    - This automatically build lazarus-app with gtk2 interface
 #
 # gtk2      - This automatically build lazarus-app with gtk2 interface
+#
+# gtk3      - This automatically build lazarus-app with gtk3 interface (only
+#             devel version)
 #     
 # qt5       - This automatically build lazarus-app with qt5 interface
 #
@@ -53,16 +56,24 @@ _INCLUDE_USES_LAZARUS_MK=   yes
 WARNING+=	"DEFAULT_LAZARUS_VER is defined, consider using DEFAULT_VERSIONS=lazarus=${DEFAULT_LAZARUS_VER} instead"
 .  endif
 
-.  if ${lazarus_ARGS:Ngtk2:Nqt5:Nqt6:Nflavors}
-IGNORE=		Unknown argument for USES=lazarus: ${lazarus_ARGS:Ngtk2:Nqt5:Nqt6:Nflavors}
+.  if empty(lazarus_ARGS)
+lazarus_ARGS=	gtk2
+.  endif
+
+.  if ${lazarus_ARGS:Ngtk2:Ngtk3:Nqt5:Nqt6:Nflavors}
+IGNORE=		Unknown argument for USES=lazarus: ${lazarus_ARGS:Ngtk2:Ngtk3:Nqt5:Nqt6:Nflavors}
 .  endif
 
 .  if !empty(LAZARUS_NO_FLAVORS)
-.    if ${LAZARUS_NO_FLAVORS:Ngtk2:Nqt5:Nqt6}
-IGNORE=         Unknown argument for LAZARUS_NO_FLAVORS: ${LAZARUS_NO_FLAVORS:Ngtk2:Nqt5:Nqt6}
+.    if ${LAZARUS_NO_FLAVORS:Ngtk2:Ngtk3:Nqt5:Nqt6}
+IGNORE=		Unknown argument for LAZARUS_NO_FLAVORS: ${LAZARUS_NO_FLAVORS:Ngtk2:Ngtk3:Nqt5:Nqt6}
 .    endif
 .  endif
 
+.  if (empty(WANT_LAZARUS_DEVEL) && ${lazarus_ARGS:Mgtk3})
+IGNORE=		No valid argument for USES=lazarus: gtk3. Consider using gtk2, qt5, qt6 or flavors instead
+.  endif
+
 DEFAULT_LAZARUS_VER=	${LAZARUS_DEFAULT}
 DEFAULT_FPC_VER=	${FPC_DEFAULT}
 # When adding a version, please keep the comment in
@@ -86,7 +97,13 @@ MKINSTDIR=		${LOCALBASE}/lib/fpc/${FPC_VER}/fpmkinst/${BUILDNAME}
 BUILD_DEPENDS+=		${LOCALBASE}/bin/as:devel/binutils \
 			${MKINSTDIR}/utils-lexyacc.fpm:lang/fpc${FPC_DEVELSUFFIX}
 
+.  if (defined(WANT_LAZARUS_DEVEL) && !empty(WANT_LAZARUS_DEVEL)) || ${ARCH:Maarch64}
+LAZARUS_DEVELSUFFIX=	-devel
+LAZARUS_FLAVORS=	gtk2 gtk3 qt5 qt6
+.  else
+LAZARUS_DEVELSUFFIX=	#
 LAZARUS_FLAVORS=	gtk2 qt5 qt6
+.  endif
 
 .  if ${lazarus_ARGS:Mflavors}
 .    if defined(LAZARUS_NO_FLAVORS)
@@ -98,16 +115,10 @@ FLAVORS:=	${LAZARUS_FLAVORS}
 .    endif
 
 .    if empty(FLAVOR)
-FLAVOR=		${FLAVORS:[1]}
+LAZARUS_PKGNAMESUFFIX=	-${FLAVORS:[1]}
 .    endif
-.  endif
-
-LAZARUS_PKGNAMESUFFIX=	-${FLAVOR}
-
-.  if (defined(WANT_LAZARUS_DEVEL) && !empty(WANT_LAZARUS_DEVEL)) || ${ARCH:Maarch64}
-LAZARUS_DEVELSUFFIX=	-devel
 .  else
-LAZARUS_DEVELSUFFIX=	#
+LAZARUS_PKGNAMESUFFIX=	-${lazarus_ARGS}
 .  endif
 
 .  if ${lazarus_ARGS:Mgtk2} || ${FLAVOR} == gtk2
@@ -120,6 +131,15 @@ LCL_PLATFORM=	gtk2
 BUILD_DEPENDS+=	${LCL_UNITS_DIR}/${LCL_PLATFORM}/interfaces.ppu:editors/lazarus${LAZARUS_DEVELSUFFIX}
 .  endif
 
+.  if ${lazarus_ARGS:Mgtk3} || ${FLAVOR} == gtk3
+LIB_DEPENDS+=	libglib-2.0.so:devel/glib20 \
+		libgtk-3.so:x11-toolkits/gtk30 \
+		libcairo.so:graphics/cairo \
+		libpango-1.0.so:x11-toolkits/pango \
+LCL_PLATFORM=	gtk3
+BUILD_DEPENDS+= ${LCL_UNITS_DIR}/${LCL_PLATFORM}/interfaces.ppu:editors/lazarus-gtk3${LAZARUS_DEVELSUFFIX}
+.  endif
+
 .  if ${lazarus_ARGS:Mqt5} || ${FLAVOR} == qt5
 LIB_DEPENDS+=	libQt5Pas.so:x11-toolkits/qt5pas
 LCL_PLATFORM=	qt5


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202504210737.53L7b1bx095737>