Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Howto create a new ebuild for mysql-jdbc?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
Rocker
n00b
n00b


Joined: 12 Dec 2002
Posts: 67
Location: The Netherlands

PostPosted: Tue Mar 11, 2003 2:00 pm    Post subject: Howto create a new ebuild for mysql-jdbc? Reply with quote

Hi,

I want to create a new ebuild script for a mysql-jdbc connection. I saw that the newest ebuild available is version 2.0.14, while the application has already a stable release of version 3.0.6.
First I wanted to download that one, and install it from source, however I thought that it would be more nicely to create a new ebuild so anybody else can also take his/her advantage from it. So I started with moving an empty skel.ebuild to my home dir and began to change the variables in it.
To test the script in small parts, I run
Code:
ebuild mysql-connector-java-3.0.6.ebuild fetch
to see if the download location is working.
The only comment i receive is:
Code:

doebuild(): aux_get() error; aborting.

I guess that you all start to begin curious to my special script which generates such outcome, well here it is:
Code:

 Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: $

DESCRIPTION="MySQL JDBC Driver"
HOMEPAGE="http://www.mysql.com/products/connector-j/index.html"
SRC_URI="ftp://ftp.snt.utwente.nl/pub/software/mysql/Downloads/Connector-J/${P}-stable.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86"
IUSE=""
DEPEND="dev-java/sun-jdk
        dev-db/mysql"
#RDEPEND=""


S=${WORKDIR}/${P}

src_compile() {
        #./configure \
                #--host=${CHOST} \
                #--prefix=/usr \
                #--infodir=/usr/share/info \
                #--mandir=/usr/share/man || die "./configure failed"
        econf || die

        emake || die
        #make || die
}

src_install() {
        make DESTDIR=${D} install || die
        #make \
        #       prefix=${D}/usr \
        #       mandir=${D}/usr/share/man \
        #       infodir=${D}/usr/share/info \
        #       install || die
        einstall
}


So my question... Does anybody has any idea what is missing/going wrong? The source URL is valid, there is a tar.gz on this location.

I haven't figured out the part of installation, but when it already goes terrible wrong with fetching, I'm beginning to get a bad feeling... :-(

I don't have much time to figure it out. I already spended half a day on it, but it's a programming job for my work, I don't have (and won't get) the time to create ebuild scripts in my boss his time. So any help would be appreciated!

Thanks in advance!
Rutger
Back to top
View user's profile Send private message
kutsuya
Retired Dev
Retired Dev


Joined: 21 Oct 2002
Posts: 189

PostPosted: Tue Mar 11, 2003 11:09 pm    Post subject: Re: Howto create a new ebuild for mysql-jdbc? Reply with quote

Hi,

What is PORTDIR_OVERLAY set to? If not sure, emerge info.
_________________
--Kutsuya
Back to top
View user's profile Send private message
Rocker
n00b
n00b


Joined: 12 Dec 2002
Posts: 67
Location: The Netherlands

PostPosted: Wed Mar 12, 2003 7:06 am    Post subject: Reply with quote

PORTDIR_OVERLAY=""
Back to top
View user's profile Send private message
kutsuya
Retired Dev
Retired Dev


Joined: 21 Oct 2002
Posts: 189

PostPosted: Thu Mar 13, 2003 9:53 am    Post subject: Reply with quote

Rocker wrote:
PORTDIR_OVERLAY=""


It seemed like you said you placed your custom ebuild in your home dir. If the ebuild isn't in PORTDIR, or PORTDIR_OVERLAY, then I don't think emerge can find it.

Let's say that mysql-jdbc belongs to the dev-java group. This is what I would do to test a custom ebuild:

Code:

# mkdir -p /usr/local/portage/dev-java/mysql-jdbc/files
# nano -w /etc/make.conf
[edit] PORTDIR_OVERLAY="/usr/local/portage"
# cd /usr/local/portage/dev-java/mysql-jdbc
## guessing location of ebuild...
# cp /home/mysql-jdbc-2.0.14.ebuild .
# ebuild mysql-jdbc-2.0.14.ebuild digest
# emerge mysql-jdbc -s


Hope that helps, I'm mostly guessing what the problem might be.
_________________
--Kutsuya
Back to top
View user's profile Send private message
potsdamlemur
n00b
n00b


Joined: 06 Jul 2002
Posts: 25
Location: Way Up North In York State

PostPosted: Mon Apr 21, 2003 9:55 pm    Post subject: ebuild for mysql-jdbc-3.0.7 in bugzilla Reply with quote

I'm also interested in getting a recent ebuild for mysql-jdbc, or making one. Scrounging around in the Documentation directory, I found this in http://www.gentoo.org/doc/en/gentoo-howto.xml : "Before writing any ebuild, check bugs.gentoo.org for an ebuild corresponding to the ebuild you want to write, but that has not yet been put into the Portage tree. Go to bugs.gentoo.org, choose query, as product select "Gentoo Linux", as component select "ebuilds". In the search field put the name of the ebuild and as status select NEW, ASSIGNED, REOPENED and RESOLVED (RESOLVED is important), then submit the query."

Following these directions gets you to bug 18130: "mysql-jdbc Connector/J ebuild..." (https://bugs.gentoo.org/show_bug.cgi?id=18130).

I've set up PORTDIR_OVERLAY to point to /usr/local/portage, and put the ebuild from 18130 into .../dev-java/mysql-jdbc. Now when I do 'emerge -s mysql-jdbc' it picks up the new ebuild. There's more work to be done (no checksum or filesize in the ebuild), but perhaps the stuff in this thread can be combined with the proposed ebuild to get it to release status?
Back to top
View user's profile Send private message
potsdamlemur
n00b
n00b


Joined: 06 Jul 2002
Posts: 25
Location: Way Up North In York State

PostPosted: Wed Apr 23, 2003 3:30 am    Post subject: How to use the 3.0.7 ebuild from bugzilla Reply with quote

OK, I've been doing a lot of RTFMing the past day or so. I don't know why the downloading isn't working, but I can say that the src_compile and src_install sections of the ebuild skeleton are not germane to java-based code. The 'configure' and 'make' commands don't really apply to java packages.

Try this: Make sure you have write privileges in /usr/local/portage, then go to the bugzilla page in previous page, and:
1) right click on "Version 3.0.7 of Mysql jdbc" in the "Attachments" table. Save the file as "/usr/local/portage/dev-java/mysql-jdbc/mysql-jdbc-3.0.7.ebuild"
2) right click on "Set the classpath" in the "Attachments" table, and save to "file:/usr/local/portage/dev-java/mysql-jdbc/files/3.0.7/21mysql-connector-java"
(this name and location is from the commit comment for the attachment, listed below the "Attachment" table).
3) give the command "emerge mysql-jdbc -s" to see if the new ebuild is seen by portage. If not, make sure PORTDIR_OVERLAY in /etc/make.conf is set to "/usr/local/portage" as discussed in previous posts.
4) once portage sees the new ebuild, type "emerge mysql-jdbc". It should complain about a digest not being present. Follow the directions to create the digest.
5) the digest is put in the .../mysql-jdbc/files directory. open it and compare the md5 digest with the one posted on the mysql download site, just to be sure.
6) if it checks out, do an "emerge mysql-jdbc". This time it should work.

Thus I got it the new ebuild to work. Now, of course, I have to *use* the driver to make sure it installed correctly. But tomorrow, not tonight.

potsdamlemur
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum