Re: libtool doesn't create .so

2010-03-23 Thread Mark Bucciarelli
On Fri, Mar 19, 2010 at 8:37 PM, Stuart Henderson s...@spacehopper.org wrote:

 Here's what I have up to now. Not tested yet but I thought I'd
 send something out rather than sit on it...


Do I need to be running current?

I tried

$ cd libmonetdb
$ make clean
...
$ make configure

but got the output below.

  $ cd ..
  $ pwd
  /usr/ports/databases/monetdb
  $ make
  ...

output very similar to output pasted below.

And finally:

  $ cd ..
  $ pwd
  /usr/ports/databases/monetdb
  $ make libmonetdb
  `libmonetdb' is up to date.
  $

I wonder if Makefile.inc is not getting pulled in b/c
it doesn't got get gm4 or autoconf 2.62.

I get this feeling this is a hard app to port.

Thanks,

m

# make clean
===  Cleaning for libmonetdb-1.36.1
# make configure
===  libmonetdb-1.36.1 depends on: m4-* - found
===  libmonetdb-1.36.1 depends on: metaauto-* - found
===  libmonetdb-1.36.1 depends on: autoconf-2.60 - found
===  libmonetdb-1.36.1 depends on: gmake-* - found
===  libmonetdb-1.36.1 depends on: libtool-* - found
===  libmonetdb-1.36.1 depends on: bzip2-* - found
===  libmonetdb-1.36.1 depends on: bzip2-* - found
===  libmonetdb-1.36.1 depends on: libiconv-* - found
===  Verifying specs: bz2 iconv.=2 bz2 iconv.=2 crypto pthread ssl
z crypto pthread ssl z
===  found bz2.10.4 iconv.6.0 crypto.18.0 pthread.11.1 ssl.15.0 z.4.1
===  Checking files for libmonetdb-1.36.1
`/usr/ports/distfiles/MonetDB-1.36.1.tar.bz2' is up to date.
 (SHA256) MonetDB-1.36.1.tar.bz2: OK
===  Extracting for libmonetdb-1.36.1
===  Patching for libmonetdb-1.36.1
 Can't find autoconf 2.60 signature in 
 /usr/ports/obj/libmonetdb-1.36.1/MonetDB-1.36.1/configure:
# Generated by GNU Autoconf 2.63 for MonetDB Common 1.36.1.
generated by GNU Autoconf 2.63
generated by GNU Autoconf 2.63.  Invocation command line was
generated by GNU Autoconf 2.63.  Invocation command line was
configured by $0, generated by GNU Autoconf 2.63,
Running autoconf-2.60 in /usr/ports/obj/libmonetdb-1.36.1/MonetDB-1.36.1
aclocal.m4:16: warning: this file was generated for autoconf 2.63.
You have another version of autoconf.  It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically `autoreconf'.
configure.in:32: error: Autoconf version 2.62 or higher is required
aclocal.m4:446: AM_INIT_AUTOMAKE is expanded from...
configure.in:32: the top level
autom4te-2.60: /usr/local/bin/gm4 failed with exit status: 63
*** Error code 63

Stop in /usr/ports/databases/monetdb/libmonetdb (line 2091 of
/usr/ports/infrastructure/mk/bsd.port.mk).
# make autoreconf
make: don't know how to make autoreconf. Stop in
/usr/ports/databases/monetdb/libmonetdb.
#



Re: libtool doesn't create .so

2010-03-23 Thread Mark Bucciarelli
On Tue, Mar 23, 2010 at 6:10 PM, Marc Espie es...@nerim.net wrote:

 Yes, very current.


Can I use a snapshot?

m



Re: libtool doesn't create .so

2010-03-20 Thread Mark Bucciarelli
On Fri, Mar 19, 2010 at 8:37 PM, Stuart Henderson s...@spacehopper.org wrote:

 Here's what I have up to now. Not tested yet but I thought I'd
 send something out rather than sit on it...


Thanks for your help.  You did a ton of work.

I'm working on a patch for the dynamic loading
issue, and when I get that done I'll add it to your
tarball.

The machine I'm using is really slow, so it will
take me a while to put it all together.

m



Re: libtool doesn't create .so

2010-03-19 Thread Mark Bucciarelli
On Thu, Mar 18, 2010 at 12:59 PM, Mark Bucciarelli mkb...@gmail.com wrote:

 How do I get the symbolic links generated
 from .so.version to .so?


What I've learned:

  * If my test code is right (see below), dlopen(libbat.so)
and dlopen(/usr/local/lib/libbat.so.1.34) do the
same thing on OpenBSD.

  * library_names_spec determines what symbolic links
libtool makes, and OpenBSD and Linux have different
values for this variable.

   * a similar topic came up on this list five years ago [1]

So, it seems to me the correct approach is to patch
monetdb to skip the call to open() and let dlopen()
do it's thing.

Does this make sense?  (Dynamic loading is new
to me.)

I'll ping upstream to ask why they call open() before
calling dlopen().  I can't think of what value it adds.

Thanks,

m

[1] http://www.mail-archive.com/ports@openbsd.org/msg02600.html

#include dlfcn.h
#include stdio.h

int
main(void)
{
void*handle;
char*fns[] = {
libbat.so,
/usr/local/lib/libbat.so.1.34,
libbat.so.1.34,
libbat.so.1,
0
};
char**fn;

for (fn = fns; *fn; fn++) {
fprintf(stderr, handle = %p for %s\n, dlopen(*fn,
RTLD_NOW), *fn);
dlclose(handle);
}
return 0;
}



Re: libtool doesn't create .so

2010-03-19 Thread Mark Bucciarelli
On Fri, Mar 19, 2010 at 11:05 AM, Stuart Henderson s...@spacehopper.org wrote:

 There are some problems with SSL checks which need configure


Maybe an upstream fix didn't make it into the Feb2010
tarballs.

There was a patch to buildtools/conf/MonetDB.m4 applied
to HEAD to fix issues I was having with finding openssl.

ref:

http://sourceforge.net/tracker/index.php?func=detailaid=2914578group_id=56967atid=482468

m



Re: how to fetch multiple archives?

2010-03-18 Thread Mark Bucciarelli
On Thu, Mar 18, 2010 at 1:20 AM, J.C. Roberts list-...@designtools.org wrote:

 The size is not that bad by comparison and dealing with a single file is
 more reliable dealing with a whole bunch of small files,


I tried building from the large archive, but the directory tree
after make expand didn't match what the ports makefile
expected.  Manually, I would type something like this:

$ cd /usr/ports/obj/MonetDB*/MonetDB*/MonetDB/MonetDB/
$ ./configure
$ gmake
$ gmake install
$ cd ../../
$ cd clients/clients
$ ./configure
etc.

I got as far as adding a do-build target that wasn't
triggered.  (Maybe I used the wrong hook name?)
Anyway, it was getting complex.

Upstream also provides a huge shell script in the
big archive but I never build that way myself and it
has lots and lots of logic in it I'll never use.

Using tiny and simple Makefiles seems cleaner
and easier to maintian.


 if upstream has a habit of changing/re-releasing files under the same
 file name (e.g. screws up chksum and forces the project to mirror the
 old version after release).


I spot checked a few releases and they seem
good about versioning.

Thanks,

m



Re: libtool doesn't create .so

2010-03-18 Thread Mark Bucciarelli
 On Wed, Mar 17, 2010 at 10:37 AM, Stuart Henderson s...@spacehopper.org 
 wrote:

 I suggest starting by trying to create a port


So make install of monetdb/monetdb runs without
error.

But after the install, when I list the LIB_SHARED
files in /usr/local/lib, there is still no .so libs, only
files  with the .so.version.

The app logic open()'s the file with the
plain .so extension.

How do I get the symbolic links generated
from .so.version to .so?

Makefile enclosed below.

Thanks,

m

# $OpenBSD: Makefile.template,v 1.55 2008/08/23 15:28:00 ajacoutot Exp $

COMMENT =   column store database (core libraries)
DISTNAME =  MonetDB-1.36.1
CATEGORIES =databases/monetdb
MASTER_SITES =  http://monetdb.cwi.nl/downloads/sources/Feb2010/

HOMEPAGE =  http://monetdb.cwi.nl/Home/
MAINTAINER =Mark Bucciarelli mkb...@gmail.com

#
#MonetDB Public License Version 1.1
#
#This License is a derivative of the Mozilla Public License
#(MPL) Version 1.1, where the difference is that all references
#to Mozilla and Netscape have been changed to MonetDB,
#and that the License has been made subject to the laws of
#The Netherlands.
#
# ref: http://monetdb.cwi.nl/Legal/MonetDBLicense-1.1.html
#

PERMIT_PACKAGE_CDROM =  Yes
PERMIT_PACKAGE_FTP =Yes
PERMIT_DISTFILES_CDROM =Yes
PERMIT_DISTFILES_FTP =  Yes

SEPARATE_BUILD =concurrent  (build simultaneously on all arches)

USE_X11 =   No
USE_GMAKE = Yes
USE_LIBTOOL =   Yes
CONFIGURE_STYLE =   gnu
CONFIGURE_ARGS +=   --enable-strict
CONFIGURE_ARGS +=   --enable-assert
CONFIGURE_ARGS +=   --enable-debug
CONFIGURE_ARGS +=   --enable-profile

# SHARED_LIBS+= libname  obsd version # orig version
SHARED_LIBS +=  mutils  1.36  # .1.36
SHARED_LIBS +=  stream  1.36  # .1.36
SHARED_LIBS +=  bat 1.36  # .1.36

.include bsd.port.mk



Re: libtool doesn't create .so

2010-03-17 Thread Mark Bucciarelli
On Wed, Mar 17, 2010 at 10:37 AM, Stuart Henderson s...@spacehopper.org wrote:

 I suggest starting by trying to create a port


OK, thanks.

m



how to fetch multiple archives?

2010-03-17 Thread Mark Bucciarelli
Working my way through the ports manual and
it didn't take me too long to get stuck.  :)

I can get MonetDB sources either as one big bz2
or lzma file, or as multiple tar.gz archives.

Further complicating things is the version number
is not the same across the different tar.gz files.

This is what I tried, but I think it's wrong---I think
PKGNAME is just for building packages, not for
retreiving sources.

V=  1.36.1
DISTNAME=   MonetDB-${V}
PKGNAME-main=   MonetDB-${V}
PKGNAME-clients=MonetDB-client-${V}
PKGNAME-monetdb5=   MonetDB5-server-5.18.1
PKGNAME-sql=MonetDB-SQL-2.36.1
DIST_SUBDIR =   monetdb
CATEGORIES= databases
MASTER_SITES=   http://monetdb.cwi.nl/downloads/sources/Feb2010/

Thanks,

m



Re: how to fetch multiple archives?

2010-03-17 Thread Mark Bucciarelli
On Wed, Mar 17, 2010 at 1:45 PM, Jolan Luff jo...@gormsby.com wrote:

 You need to manually set DISTFILES instead.


Is this variable documented somewhere?

m



Re: how to fetch multiple archives?

2010-03-17 Thread Mark Bucciarelli
On Wed, Mar 17, 2010 at 2:41 PM, Stuart Henderson s...@spacehopper.org wrote:

 DISTNAME =      MonetDB-Feb2010-SuperBall
 EXTRACT_SUFX =  .tar.bz2



It's massive.

===  Checking files for MonetDB-Feb2010-SuperBall
 Fetch 
 http://monetdb.cwi.nl/downloads/sources/Feb2010/MonetDB-Feb2010-SuperBall.tar.bz2
MonetDB-Feb2010-SuperB...  44% |***
| 24228 KB 04:22 ETA
/usr: write failed, file system is full
ftp: Writing MonetDB-Feb2010-SuperBall.tar.bz2: No space left on device

:(

m



typo in porting guide: pobj -- obj

2010-03-17 Thread Mark Bucciarelli
http://www.tw.openbsd.org/faq/ports/guide.html

On 4.6, make extract puts sources in

 /usr/ports/obj

not

/usr/ports/pobj

Thanks,

m



Re: how to fetch multiple archives?

2010-03-17 Thread Mark Bucciarelli
On Wed, Mar 17, 2010 at 6:27 PM, Stuart Henderson s...@spacehopper.org wrote:

 Hmm. If these can be built independently maybe the best way is
 separated with a layout like this;

 /usr/ports/databases/monetdb
 /usr/ports/databases/monetdb/monetdb
 /usr/ports/databases/monetdb/monetdb-sql
 /usr/ports/databases/monetdb/monetdb-xquery
 ...


Thanks, this was very helpful.

Now make build triggers configure and gmake
with a really simple Makefile.

There are dependencies in the build order

   monetdb -- clients -- MonetDB5 -- sql

but I expect I can put these in the various
Makefiles and it will just work.

m



monetdb

2010-01-04 Thread Mark Bucciarelli
Hi,

I've been working on getting MonetDB to build on
OpenBSD.  I'm not sure I'll get as far as building
a port, but my patches are getting accepted [1] so
at least I can get their source tree to build cleanly
on OpenBSD.

I've hit a couple things I can't figure out.

One is related to auto-tools crap.  After I run
their bootstrap script, I have to edit the configure.sh
script so that every instance of -lssl is replaced by
-lssl -lcrypto.  In a comment in the bug report [2],
a MonetDB dev said weird this is autoconf
generated code.

I'm hoping this is a fairly common issue with
ports that use openssl. I grepped through the
MonetDB code, but couldn't find a .m4, a .in,
or .am file that creates this test.  I'm pretty
stuck on this one.

The other issue is that they use a %pure_parser
statement in their yacc code.  Is this specific to
bison?  The OpenBSD 4.6 yacc failed to compile
that line.

If it is bison-specific, do they need to update their
build to call bison or is there a way I can set a
know to tell OpenBSD to use bison and not yacc.

Thanks,

Mark

[1] 
http://sourceforge.net/tracker/?func=detailaid=2920265group_id=56967atid=482468
[2] 
http://sourceforge.net/tracker/?func=detailaid=2914578group_id=56967atid=482468

https://sourceforge.net/tracker/?func=detailaid=2920265group_id=56967atid=482468
[2]
[1]



Patch so R CMD INSTALL pkg works

2009-07-21 Thread Mark Bucciarelli
Hi,

You may have already fixed this.  But in case it's still a bug,
on 4.2 the command

$ sudo R CMD INSTALL pkg

doesn't work.  It's simple to test, download some CRAN package
tar.gz and try to install it from the command line.

The enclosed patches fixed this for me.  See the July 3, 2007
thread Problem Installing R packages in OpenBSD for someone
else with the same problem:

https://stat.ethz.ch/pipermail/r-help/2007-July/135577.html

Thanks,

Mark


-- begin rfix1.diff
To apply, type

$ cd /usr/local/bin
$ sudo patch -p0  this.diff

--- /dev/null   Tue Jul 21 07:48:58 2009
+++ R   Sat Aug 18 13:40:14 2007
@@ -8,11 +8,11 @@
 fi
 R_HOME=${R_HOME_DIR}
 export R_HOME
-R_SHARE_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R/share
+R_SHARE_DIR=/usr/local/lib/R/share
 export R_SHARE_DIR
-R_INCLUDE_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R/include
+R_INCLUDE_DIR=/usr/local/lib/R/include
 export R_INCLUDE_DIR
-R_DOC_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R/doc
+R_DOC_DIR=/usr/local/lib/R/doc
 export R_DOC_DIR
 
 # Since this script can be called recursively, we allow R_ARCH to
-- end rfix1.diff
-- begin rfix2.diff
To apply:

$ cd /usr/local/lib/R/bin
$ sudo patch -p0  this.diff

--- /dev/null   Tue Jul 21 07:57:10 2009
+++ R   Tue Jul 21 08:00:41 2009
@@ -2,17 +2,18 @@
 # Shell wrapper for R executable.
 
 R_HOME_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R
+R_HOME_DIR=/usr/local/lib/R
 if test -n ${R_HOME}  \
test ${R_HOME} != ${R_HOME_DIR}; then
   echo WARNING: ignoring environment value of R_HOME
 fi
 R_HOME=${R_HOME_DIR}
 export R_HOME
-R_SHARE_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R/share
+R_SHARE_DIR=/usr/local/lib/R/share
 export R_SHARE_DIR
-R_INCLUDE_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R/include
+R_INCLUDE_DIR=/usr/local/lib/R/include
 export R_INCLUDE_DIR
-R_DOC_DIR=/usr/obj/i386/R-2.5.0p0/fake-i386/usr/local/lib/R/doc
+R_DOC_DIR=/usr/local/lib/R/doc
 export R_DOC_DIR
 
 # Since this script can be called recursively, we allow R_ARCH to
-- end rfix2.diff



lighttpd

2007-12-03 Thread Mark Bucciarelli
I can see from the openbsd cvs logs that the openbsd port was updated
to 1.4.18 (fixing a security issue) on Fri Oct 5 14:56:50 2007 UTC.

The 4.2 lighttpd package is 1.4.16, so did the fix occur after the 4.2 freeze?

Also, I didn't see any posts on ports-security for this issue.  Is the
gmane listing [1] incomplete, or do some issues not make it to
ports-security?

Thanks,

m

[1] 
http://news.gmane.org/group/gmane.os.openbsd.ports.security/last=/force_load=t



Re: lighttpd

2007-12-03 Thread Mark Bucciarelli
On 12/3/07, Landry Breuil [EMAIL PROTECTED] wrote:

 It has already been discussed, there is no one available to handle
 security updates to -stable ports.

Missed that, I was searching on lighttpd.  I have now read Nikolay's
message re: -stable.  Too bad.  :(

  It is recommended to use -current
 if you want maintained ports with security updates.

I am at 4.2 now. If I upgrade to the Nov. 26th snapshot, I must
rebuild all installed packages using the ports tree, correct?

Must I rebuild all installed ports each time I update to a new
snapshot or via cvs up?

Thanks,

m