Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Aug 2008 06:05:18 +0400
From:      Dmitry Marakasov <amdmi3@amdmi3.ru>
To:        Torfinn Ingolfsen <tingox@gmail.com>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: amule 2 port - trying an upgrade
Message-ID:  <20080823020518.GA75067@hades.panopticon>
In-Reply-To: <ef8c8a880808221810y6aeaf86ek49db6aec7e598408@mail.gmail.com>
References:  <ef8c8a880808181331ga307908o9b2f3c5748b0cce4@mail.gmail.com> <20080821105506.GA25154@wep4017.physik.uni-wuerzburg.de> <ef8c8a880808211432r24a0d28bn526927e0d36aabef@mail.gmail.com> <20080822125845.GB4663@hades.panopticon> <ef8c8a880808220645o67ab3916o6982c5c65b3ff64b@mail.gmail.com> <20080822221339.GH1421@hades.panopticon> <ef8c8a880808221810y6aeaf86ek49db6aec7e598408@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
* Torfinn Ingolfsen (tingox@gmail.com) wrote:

> > You should REINPLACE_CMD -e '/if test/ s|==|=|' ${WRKSRC}/configure
> I have fixed that now (see attached diff). I also found a similar
> thing in ${WRKSRC}/automake/manpages.am and tried to fix that.
> Are automake files plain sh scripts? I guess they are.
No, they are automake's macro language and are expanded my automake
to produce Makefile.in. Since the final product is Makefiles, shell
stuff is possible there.

However, you shouldn't modify .am stuff in this case, as automake
is not executed in the build process. The only things you're to
modify are configure and Makefile.in files.
You can, of course, modify .am stuff instead and call automake/autoconf
to regenerate stuff (via USE_AUTOTOOLS), but that's only needed in
extreme cases.

> Anyway, even with my new Makefile with your fixes, the install fails:
No time to look there now. I'll be available in couple of days if you
don't figure everything out by yourself by that time.

For now, however, some notes on the patch:

> +PORTVERSION=	2.2.2
> +PORTREVISION=	1
PORTREVISION should be removed when PORTVERSION is bumped

> +USE_XORG=	x11
Not actually needed, as the port uses wx which assumes x11.

> +USE_GETTEXT=	yes
Using gettext conditionally like before no longer work?

> -CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
> +
> +CONFIGURE_TARGET=	--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
Please remove, this is now handled automatically.

>  CONFIGURE_ARGS=	--disable-debug \
> +		--mandir=${MANPREFIX}/man \
Not needed, --mandir is appended to CONFIGURE_ARGS by default

> -		--with-libintl-prefix=${LOCALBASE} \
> -		--with-libiconv-prefix=${LOCALBASE} \
> -		--enable-embedded_crypto
> +		--with-wx-config=${WX_CONFIG} \
> +		--with-gdlib-prefix=${LOCALBASE} \
> +		--with-libpng-prefix=${LOCALBASE} \
> +		--with-crypto-prefix=${LOCALBASE} \
> +		--enable-monolithic
Judging from my experience, when CPPFLAGS/LDFLAGS with ${LOCALBASE}
paths are provided to configure (like in this case), --with-*-prefix
args are not needed, as configure detects stuff on its own.

> -.if !defined(WITHOUT_OPTIMIZE)
> +.if defined(WITH_OPTIMIZE)
No, checking WITHOUT_OPTIMIZE is correct. You should check
counter-default values for options, i.e. check WITH_FOO if FOO is
off by default, and WITHOUT_FOO if FOO is on by default. Same for
other checks.

> -share/doc/aMule-2.1.3/ABOUT-NLS
> -share/doc/aMule-2.1.3/amulesig.txt
> -share/doc/aMule-2.1.3/amule-win32.HOWTO.txt
> -share/doc/aMule-2.1.3/Changelog
> -share/doc/aMule-2.1.3/Doxyfile
> -share/doc/aMule-2.1.3/ED2K-Links.HOWTO
> -share/doc/aMule-2.1.3/INSTALL
> -share/doc/aMule-2.1.3/license.txt
> -share/doc/aMule-2.1.3/README
> -share/doc/aMule-2.1.3/TODO
> -share/doc/aMule-2.1.3/EC_Protocol.txt
> -share/doc/aMule-2.1.3/socks4.protocol
> -@dirrmtry share/doc/aMule-2.1.3
> +share/doc/aMule-2.2.2/ABOUT-NLS
> +share/doc/aMule-2.2.2/amulesig.txt
> +share/doc/aMule-2.2.2/amule-win32.HOWTO.txt
> +share/doc/aMule-2.2.2/Changelog
> +share/doc/aMule-2.2.2/Doxyfile
> +share/doc/aMule-2.2.2/ED2K-Links.HOWTO
> +share/doc/aMule-2.2.2/INSTALL
> +share/doc/aMule-2.2.2/license.txt
> +share/doc/aMule-2.2.2/README
> +share/doc/aMule-2.2.2/TODO
> +share/doc/aMule-2.2.2/EC_Protocol.txt
> +share/doc/aMule-2.2.2/socks4.protocol
> +@dirrmtry share/doc/aMule-2.2.2
There are automatic ways to handle docs, so you don't need to change
plist on every update.

One way is to define DOCSDIR in the Makefile:
DOCSDIR=	${PREFIX}/share/doc/aMule-${PORTVERSION}

and use %%DOCSDIR%% instead of share/doc/aMule-2.2.2 in the plist.

Another way is to add PORTDOCS=* to Makefile in addition to DOCSDIR,
and remove doc files from plist completely - they'll be added
automatically on install.

> -+	msg << _("aMule remote control ") << wxT(VERSION) << wxT(" for FreeBSD");
> ++       msg << _("aMule remote control ") << wxT(VERSION) << wxT(" for FreeBSD");
>   #else
>  -	msg << wxT("aMule ") << wxT(VERSION);
> -+	msg << wxT("aMule ") << wxT(VERSION) << wxT(" for FreeBSD");
> ++       msg << wxT("aMule ") << wxT(VERSION) << wxT(" for FreeBSD");
Please don't do no op chenages

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3@amdmi3.ru  ..:  jabber: amdmi3@jabber.ru    http://www.amdmi3.ru



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