|
From: Friedrich L. <fl...@fl...> - 2003-04-21 20:14:03
|
Hi!
For those who want to add a new software package to devil linux
and who are not shure which files are needed.
This is the minimum list of files you need to add, eg. for
netacct-mysql:
scripts/netacct-mysql
This is the main file you need to write. Here you
essentially call the configure and/or makefile stuff of the
software you want to add. When the build system calls this
script your current work directory is the source directory
of the software in question, eg. tmp/netacct-mysql-0.75/
src/netacct-mysql-0.75.tar.gz
The software that get's added to devil linux. Do NOT apply
patches and repackage the original sources. But sources in
seperate files and apply them in the script mentioned above.
scripts/scripts/nacctd
If this software is optional (selectable via 'make menuconfig')
then you should put the runlevel script for your software here.
scripts/build/382netacct-mysql
scripts/install/382netacct-mysql
Just run a
touch scripts/build/382netacct-mysql
touch scripts/install/382netacct-mysql
to create empty files. That's how we can check this into CVS
because symlinks would not get checked in. The number 382 can
be replaced by any number you just have to take care that
software you rely upon does get compiled earlier.
If you do add software that should be part of the devil linux base
system and which is not selectable via 'make menuconfig' than you
need to the following files, eg.
config/etc/init.d/netacct-mysql
Don't put the runlevel script at scripts/scripts/netacct-mysql
but at this location because this way it will be part of the
devil linux base system
Sometimes your software packages needs some defaults for configure
or make. Put such files at scripts/config/, eg.
scripts/config/config-netacct-mysql
For an example of the build script look at
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/devil-linux/build/scripts/netacct-mysql?rev=1.2
Now you might ask, what about the /etc/init.d/rc?.d/ symlinks.
For this you have to out some lines like the following to your
start script
### BEGIN INIT INFO
# Provides: nacctd
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: ACCOUNTING daemon
### END INIT INFO
This way the insserv utility can take care of creating the relevant
links at /etc/init.d/rc?.d/. For further details please read the
linux standard base (LSB) specification and take a look at the files
that already come with devil linux. Here the relevant parts of the
LSB specification:
http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/iniscrptact.html
http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/initscrcomconv.html
http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/facilname.html
Note: I don't have to stress the fact that you have to replace
netacct-mysql/nacctd with the name of the software package you're
going to add, do I ? ;-)
For further questions please don't hesitate to ask, but please on
the developer mailing list.
--
MfG / Regards
Friedrich Lobenstock
____________________________________________________________________
Friedrich Lobenstock Linux Services Lobenstock
URL: http://www.lsl.at/ Email: fl...@fl...
____________________________________________________________________
|
|
From: Friedrich L. <fl...@fl...> - 2003-04-21 20:42:32
|
Friedrich Lobenstock wrote: > Sometimes your software packages needs some defaults for configure > or make. Put such files at scripts/config/, eg. > scripts/config/config-netacct-mysql As a side note, you might want to copy this config file to $ETCDIR/etc from your compile script if there's no default config file in the orginal source distribution or if you want to add one with other default values. -- MfG / Regards Friedrich Lobenstock ____________________________________________________________________ Friedrich Lobenstock Linux Services Lobenstock URL: http://www.lsl.at/ Email: fl...@fl... ____________________________________________________________________ |
|
From: Bruce S. <bw...@ar...> - 2003-04-30 18:49:40
|
> For those who want to add a new software package to devil linux > and who are not shure which files are needed. > > This is the minimum list of files you need to add, eg. for > netacct-mysql: > scripts/netacct-mysql > This is the main file you need to write. Here you > essentially call the configure and/or makefile stuff of the > software you want to add. When the build system calls this > script your current work directory is the source directory > of the software in question, eg. tmp/netacct-mysql-0.75/ OK, looking at some scripts I see variables used, like: $SOFTWAREFILE $PACKAGEDIR $WORKDIR etc... Where do they get set / what are they set to / what variables are available for use in the script ? In the "install" section, WHERE do I install the binaries? If I do a normal "make install", wouldn't that install it under the lfssystem directory? Do they go there or under some other directory? Thanks, Bruce. |
|
From: Friedrich L. <fl...@fl...> - 2003-04-30 21:24:09
|
Bruce Smith wrote: >>For those who want to add a new software package to devil linux >>and who are not shure which files are needed. >> >>This is the minimum list of files you need to add, eg. for >>netacct-mysql: >> scripts/netacct-mysql >> This is the main file you need to write. Here you >> essentially call the configure and/or makefile stuff of the >> software you want to add. When the build system calls this >> script your current work directory is the source directory >> of the software in question, eg. tmp/netacct-mysql-0.75/ > First, may I suggest that you start your development with the current 0.6 because it's easier for us to support you and it's also the more advanced system. > > OK, looking at some scripts I see variables used, like: > $SOFTWAREFILE $PACKAGEDIR $WORKDIR etc... > Where do they get set / what are they set to / what variables are > available for use in the script ? > Take a look at the script used in my example: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/devil-linux/build/scripts/netacct-mysql?rev=HEAD&only_with_tag=HEAD&content-type=text/vnd.viewcvs-markup > In the "install" section, WHERE do I install the binaries? > If I do a normal "make install", wouldn't that install it under the > lfssystem directory? Do they go there or under some other directory? The script should us # source functions and config source $MYDIR/settings source $MYDIR/functions to include all the mentioned variables and definitions. See http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/devil-linux/build/scripts/settings?rev=1.26&content-type=text/vnd.viewcvs-markup for the variables defined. -- MfG / Regards Friedrich Lobenstock ____________________________________________________________________ Friedrich Lobenstock Linux Services Lobenstock URL: http://www.lsl.at/ Email: fl...@fl... ____________________________________________________________________ |
|
From: Bruce S. <bw...@ar...> - 2003-05-01 01:11:21
|
> First, may I suggest that you start your development with the > current 0.6 because it's easier for us to support you and it's > also the more advanced system. That's fine. I needed to build a 0.5 system so I could compile the CIPE kernel module for my running system. I've done that, and the module loads on my running 0.5 firewall, so I'm happy now. :-) I'll attempt installing CIPE on 0.6 now. > > In the "install" section, WHERE do I install the binaries? > > The script should us > # source functions and config > source $MYDIR/settings > source $MYDIR/functions > > to include all the mentioned variables and definitions. Thanks, it makes more sense to me now. Any feeling if CIPE should be a selection on menuconfig or not? -- Thanks again, Bruce. |
|
From: Heiko Z. <he...@zu...> - 2003-05-01 01:20:20
|
Friedrich Lobenstock wrote: > Bruce Smith wrote: > >> In the "install" section, WHERE do I install the binaries? >> If I do a normal "make install", wouldn't that install it under the >> lfssystem directory? Do they go there or under some other directory? > When you have luck, then the program you want to add supports the DESTDIR variable for the "make install" command. The sample Friedl refered to, shows how to work with it. When DESTDIR is not supported, then it could be a bit tricky. I usually tend to ask google and look at the debian/suse/redhat srpms. Why inventing the wheel twice.... ;-) Check also the files in the folders build/scripts/configuration build/scripts/configuration/help Those are the files/entries for "make menuconfig" and the associated help. -- Regards Heiko We are Penguin, resistance is futile! http://www.devil-linux.org |
|
From: Bruce S. <bw...@ar...> - 2003-05-01 01:28:36
|
> When you have luck, then the program you want to add supports the > DESTDIR variable for the "make install" command. The sample Friedl > refered to, shows how to work with it. Yes, I saw that. > When DESTDIR is not supported, then it could be a bit tricky. I usually > tend to ask google and look at the debian/suse/redhat srpms. Why > inventing the wheel twice.... ;-) I'm way ahead of you. I already installed the Redhat CIPE SRPM and looked at the SPEC file earlier today. :-) > Check also the files in the folders > build/scripts/configuration > build/scripts/configuration/help > Those are the files/entries for "make menuconfig" and the associated help. I'll take a look. Hopefully I won't have too many more questions. :-) -- Thanks, Bruce. |
|
From: Heiko Z. <he...@zu...> - 2003-05-01 01:45:18
|
Bruce Smith wrote: >>When DESTDIR is not supported, then it could be a bit tricky. I usually >>tend to ask google and look at the debian/suse/redhat srpms. Why >>inventing the wheel twice.... ;-) > > > I'm way ahead of you. I already installed the Redhat CIPE SRPM and > looked at the SPEC file earlier today. :-) Lazy ass ;-) >>Check also the files in the folders >>build/scripts/configuration >>build/scripts/configuration/help >>Those are the files/entries for "make menuconfig" and the associated help. > > > I'll take a look. Hopefully I won't have too many more questions. :-) I'm online for a while, so just ask. I have to read this damned scuba dive book, I didn't think getting the license is so much work. :-( -- Regards Heiko We are Penguin, resistance is futile! http://www.devil-linux.org |
|
From: Bruce S. <bw...@ar...> - 2003-05-01 20:38:52
|
Looking through menuconfig, I'm unclear about this option: "use DISTCC to speed up compile" What's it do? What's the advantage/disadvantage of selecting it? And most important: Should I select it? :-) > >>When DESTDIR is not supported, then it could be a bit tricky. I usually > >>tend to ask google and look at the debian/suse/redhat srpms. Why > >>inventing the wheel twice.... ;-) > > > > I'm way ahead of you. I already installed the Redhat CIPE SRPM and > > looked at the SPEC file earlier today. :-) > > Lazy ass ;-) You bet! I've been in this business too long. :-) > > I'll take a look. Hopefully I won't have too many more questions. :-) > > I'm online for a while, so just ask. Unfortunately with the time difference that didn't work out. I'm in the US (GMT-05), and you're in ... Germany? > I have to read this damned scuba dive book, I didn't think getting the > license is so much work. :-( That's something I'd like to do someday, but I keep putting it off. -- Thanks, Bruce. |