summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason E. Hale <jhale@FreeBSD.org>2023-08-21 07:08:22 -0400
committerJason E. Hale <jhale@FreeBSD.org>2023-08-21 07:15:13 -0400
commit52382727a5c20bcfb142cbadced9a4b913abbdd4 (patch)
tree2fcd5e99d24a42541d28e35a13fc4731fe41d595
parent22e222cbcea088a86fb58a5659742af50b337d86 (diff)
downloadfreebsd-ports-52382727a5c20bcfb142cbadced9a4b913abbdd4.zip
misc/nut: Fix linking when FLTK option is on
While here, use more options helpers and add a few missing XORG deps. Reported by: Andrew Xiang <andrewxiang@gmail.com> via jbeich
-rw-r--r--misc/nut/Makefile20
-rw-r--r--misc/nut/files/patch-anameal.c28
2 files changed, 35 insertions, 13 deletions
diff --git a/misc/nut/Makefile b/misc/nut/Makefile
index 0a87d4b6a913..04935a8cd992 100644
--- a/misc/nut/Makefile
+++ b/misc/nut/Makefile
@@ -1,6 +1,6 @@
PORTNAME= nut
PORTVERSION= 20.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= misc
MASTER_SITES= SF
PKGNAMEPREFIX= health-
@@ -26,16 +26,10 @@ FLTK_LIB_DEPENDS= libfreetype.so:print/freetype2 \
libfontconfig.so:x11-fonts/fontconfig \
libfltk_images.so:x11-toolkits/fltk
FLTK_USES= xorg
-FLTK_USE= XORG=x11,xau,xcb,xdmcp,xext,xft,xinerama,xpm,xrender
+FLTK_USE= XORG=x11,xau,xcb,xcursor,xdmcp,xext,xfixes,xft,xinerama,xpm,xrender
FLTK_MAKE_ENV= HAVE_FLTK=1 FLTK_NUT="fltk/Nut"
FLTK_MAKE_ENV_OFF= HAVE_FLTK=0 FLTK_NUT=""
-
-.include <bsd.port.options.mk>
-
-.if ${PORT_OPTIONS:MFLTK}
-DESKTOP_ENTRIES="Nut" "" "nuticon" "Nut" \
- "Science;Biology;MedicalSoftware;" false
-.endif
+FLTK_DESKTOP_ENTRIES= "Nut" "" "nuticon" "Nut" "Science;Biology;MedicalSoftware;" false
post-patch:
@${FIND} ${WRKSRC} -name "Makefile" | ${XARGS} ${REINPLACE_CMD} -e \
@@ -48,10 +42,6 @@ post-patch:
s|$$(OPT)||'
do-install:
-.if ${PORT_OPTIONS:MFLTK}
- ${INSTALL_PROGRAM} ${WRKSRC}/fltk/Nut ${STAGEDIR}${PREFIX}/bin
- ${INSTALL_DATA} ${WRKSRC}/nuticon.xpm ${STAGEDIR}${PREFIX}/share/pixmaps
-.endif
${INSTALL_PROGRAM} ${WRKSRC}/nut ${STAGEDIR}${PREFIX}/bin
${INSTALL_MAN} ${WRKSRC}/nut.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
@${MKDIR} ${STAGEDIR}${DATADIR}
@@ -59,4 +49,8 @@ do-install:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
+do-install-FLTK-on:
+ ${INSTALL_PROGRAM} ${WRKSRC}/fltk/Nut ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_DATA} ${WRKSRC}/nuticon.xpm ${STAGEDIR}${PREFIX}/share/pixmaps
+
.include <bsd.port.mk>
diff --git a/misc/nut/files/patch-anameal.c b/misc/nut/files/patch-anameal.c
new file mode 100644
index 000000000000..10bfd40f6e47
--- /dev/null
+++ b/misc/nut/files/patch-anameal.c
@@ -0,0 +1,28 @@
+Fix linker error when FLTK option is enabled.
+
+ld: error: duplicate symbol: foodwork
+>>> defined at anameal.c
+>>> ../anameal.o:(foodwork)
+>>> defined at PersonalOptions.cc
+>>> PersonalOptions.o:(.bss+0x0)
+
+--- anameal.c.orig 2023-08-21 10:50:52 UTC
++++ anameal.c
+@@ -29,7 +29,7 @@
+ #include <strings.h>
+ #include <time.h>
+
+-struct food *foodwork;
++struct food *foodwork_cli;
+ int max;
+
+ void analyze_meals(struct meal *meal_ptr_origin, int specialheader)
+@@ -43,7 +43,7 @@ float prodefic, thispct, totaldefic, serving_ratio;
+ float deficpct[DV_COUNT], food_abacus[MAX_FOOD], serving_ratio_abacus[MAX_FOOD];
+ int deficnut[DV_COUNT];
+ float prodefic, thispct, totaldefic, serving_ratio;
+-foodwork = &food_work;
++foodwork_cli = &food_work;
+ options.temp_meal_root = meal_ptr_origin;
+ mealcount = meal_count(meal_ptr_origin);
+ max = mealcount;