HEADS UP: Eclipse 3.0 updated
Jeremy Faulkner
gldisater at gldis.ca
Mon Jul 26 11:13:40 PDT 2004
Panagiotis Astithas wrote:
> Jeremy Faulkner wrote:
>
>> Norikatsu Shigemura wrote:
>>
>>> Hi eclipse user and maintainer.
>>>
>>> I updated Eclipse 3.0 and related ports, so then some ports
>>> was broken. Please fix these ports! :-)
>>>
>>> If you find a problem, please report to java@ and nork at .
>>
>>
>>
>> WITH_MOTIF=yes fails to detect that kdebase is not present on the
>> system and will always attempt to compile it. An earlier patch I
>> submitted removed the kde swt lib from the build, this patch corrects
>> the pkg_info check for kdebase.
>>
>> The "no packages match pattern" is going to stderr not stdout and so
>> will not be caught. However if there is a package installed the
>> outputted information does go to stdout.
>
>
> Regrettably I don't have a desktop machine without KDE right now, so I
> can't verify this, but your analysis seems correct. However, your
> proposed solution is not in accordance with your analysis. You seem to
> simply reverse the logic of the null check, instead of redirecting
> stderr to stdout as you implied.
>
I did not describe my fix, I described the problem. Here is another
patch that removes the unnecessary greps. The redirection of stderr in
this patch to /dev/null is only to avoid having it go to console during
the compile.
It doesn't really matter if you have KDE installed or not, you can test
the fix by making it search for a pkg that you don't have installed.
pkg_info -xc 'SomePkgThatIsNotInstalled' > test.txt
<pkg not found error to stderr>
cat test.txt
<nothing>
pkg_info -xc 'SomePkgThatIsInstalled' > test.txt
<no output>
cat test.txt
<the pkg information>
So, pkg_info returns nothing to stderr if the pkg is not installed, and
returns the pkg information if the pkg is installed, thus the logic
reversal in the if statement.
--
Jeremy Faulkner http://www.gldis.ca
-------------- next part --------------
diff -ur eclipse/Makefile eclipse.mod/Makefile
--- eclipse/Makefile Sun Jul 25 07:30:36 2004
+++ eclipse.mod/Makefile Sun Jul 25 20:13:23 2004
@@ -71,8 +71,8 @@
# The Motif version builds a KDE/Qt library if kdebase is around
.if defined(WITH_MOTIF)
-BUILD_KDE=`${PKG_INFO} -xc kdebase | ${GREP} "no packages match"`
-.if empty(${BUILD_KDE})
+BUILD_KDE=`${PKG_INFO} -xc kdebase 2>/dev/null`
+.if !empty(${BUILD_KDE})
PLIST_SUB+= KDE:=""
.else
PLIST_SUB+= KDE:="@comment *${BUILD_KDE}*"
diff -ur eclipse/files/swt-motif-build.sh eclipse.mod/files/swt-motif-build.sh
--- eclipse/files/swt-motif-build.sh Sun Jul 25 04:01:08 2004
+++ eclipse.mod/files/swt-motif-build.sh Sun Jul 25 20:12:25 2004
@@ -36,8 +36,8 @@
else
echo "Building FreeBSD version of SWT and GNOME DLLs."
gmake -f make_freebsd.mak ${1} ${2} ${3} ${4}
- build_kde=`pkg_info -xc kdebase | grep "no packages match"`
- if [ "$build_kde" = "" ]; then
+ build_kde=`pkg_info -xc kdebase 2>/dev/null`
+ if [ "$build_kde" != "" ]; then
echo "Building FreeBSD version of KDE DLL."
gmake -f make_freebsd.mak make_kde
fi
More information about the freebsd-java
mailing list