Tinderbox extra scripts

Continuing on from my previous two ramblings let's have a look at two scripts I use with my tinderbox setup. It may not be the best place but I decided to keep these within the tinderbox/scripts folder.

The first script is gencompilerenvfiles which I have expanded a little since my previous post.

#!/bin/sh cd /usr/local/tinderbox/scripts/etc/env rm build.* ## set CC options ############################################### for BNAME in `../../tc listBuilds | grep clang` do cat > build.$BNAME <<CCOPTIONS export CC=clang export CXX=clang++ export CPP=clang-cpp export NO_WERROR= export WERROR= CCOPTIONS done for BNAME in `../../tc listBuilds | grep gcc` do cat > build.$BNAME <<CCOPTIONS export CC=gcc export CXX=g++ export CPP=cpp export NO_WERROR= export WERROR= CCOPTIONS done ## set the ARCH ############################################### for BNAME in `../../tc listBuilds | grep i386` do cat >> build.$BNAME <<CCOPTIONS export ARCH=i386 CCOPTIONS done for BNAME in `../../tc listBuilds | grep amd64` do cat >> build.$BNAME <<CCOPTIONS export ARCH=amd64 CCOPTIONS done ## optionally set the CPUTYPE - fixes some build issues ############################################### if [ "$1" = "cpu" ] then for BNAME in `../../tc listBuilds | grep i386` do cat >> build.$BNAME <<CCOPTIONS export CPUTYPE=pentium2 CCOPTIONS done for BNAME in `../../tc listBuilds | grep amd64` do cat >> build.$BNAME <<CCOPTIONS export CPUTYPE=nocona CCOPTIONS done fi

So the changes since my previous post are fairly small and obvious - first I added NO_WERROR and WERROR which allows some ports to finish building that only generate warnings. Some ports are setup to treat warnings as errors causing the build to stop. While it can make sense with some ports, others it isn't of concern and only gets annoying that the builds stop and you take 10 minutes to figure out that it's all because of a simple warning.

The next change is the addition of ARCH - when building for the same arch as the base system this is of no concern but some ports have a problem building on an amd64 system when the compiler is generating x86 code. The ARCH definition overcomes that issue.

The other change is the conditional addition of CPUTYPE. This is added by calling the script with an argument of cpu. I found a couple of ports that have trouble compiling when targeting the minimum cpu features. While the cpu types used can be adjusted I chose pentium2 as the minimum 32bit as i686 is a common base but sometimes the lack of mmx causes problems, pentium2 is the next one up that has mmx support, pentium4 or prescott are other good choices if you know the minimum cpu your builds need to run on or if you need sse. For amd64 I chose nocona as the first Intel 64bit cpu, not sure that core2 would be any advantage but this can be changed to corei7 to include sse4.2 support. Other options for amd cpu's can be used if you want to test against amd specific features.

The other script I showed previously I called testbuilds.sh. I have expanded this script quite a bit and now call it compileport - while it is now a lot longer than the previous example it's not really more complex. The extra length is from many case and if statements than any real complexity. You can download it below if you want to use it or just read through it.

For the most part you should be able to figure it out based on the comments and help (-h) included within the script. To compile a port we want to know 4 things - sysversion arch compiler and port, sysversion arch and compiler default to current i386/amd64 and gcc/clang and can be left out if you wish to use that combination. That leaves us with specifying the port, giving a minimum of compileport -P <category/portname> to compile against 10-CURRENT.

A few bonus options for sysversion are for preset searches - all current stable and release should be obvious, with releng being a moving target based on system releases. Currently this is set to 9.0 8.3 and 7.4 - being the highest minor release of each major version. Over time this should be updated to include newer releases and drop the less than current releases. So when 9.1 goes beta or RC1 it would be added to the list and after release we can remove 9.0.

If you want to setup default values you can do that through environment variables, which can also be setup in your shell rc files like any other variable. So if you always compile for 9-STABLE you can set OPTBASEVERS to 9-STABLE and it will be used without you having to specify -B 9-STABLE every time. This is where the upper/lower case options come into play. If you have the OPTBASEVERS set to 9-STABLE then compileport -b 8-STABLE will build the port for both 9-STABLE and 8-STABLE but if you use compileport -B 8-STABLE then it will ignore the environment settings and just compile for 8-STABLE. The real advantage to environment settings comes when you want to compile a list of ports. This may be a preset list of all the ports you maintain or you can do something like -

setenv OPTPORTLIST `pkg_info -aoq` compileport -B all

will compile every port you have installed on your system with every tinderbox build you have setup - or -

setenv OPTPORTLIST `pkg_version -vL= | awk '{print $1}' | xargs pkg_info -oq` compileport -B 9-STABLE

will compile every port that needs updating against the 9-STABLE builds you have setup. This leads into what I plan to talk about in my next post - using tinderbox to build your own packages.

gencompilerenvfiles.bz2451 bytes
compileport.bz22.53 KB


letoltes's picture

Hi my loved one! I wish to say that this post is amazing, great written and come
with almost all vital infos. I would like to see
more posts like this .

one of a kind experience synonym's picture

Have a great Wednesday!

zlokalizowanie osoby's picture

This excellent website really has all the info I
wanted concerning this subject and didn't know who
to ask.

basketball clothing flyer's picture

It's amazing to pay a quick visit this web page annd reading the views of all mates about this paragraph, while
I am also eaber of getting knowledge.

Here is my websitfe :: basketball clothing flyer

perfumes's picture

Heya i'm for the primary time here. I came across this board
and I to find It really helpful & it helped me
out much. I hope to provide something again and help others such as you aided me.

basketball gear youth's picture

Greatt blog! Is your thme custom made or diid you download it from somewhere?
A design like yours with a few simple adjustements would really make my blog jump out.
Please let me know where you got your design. With thanks

Cheeck out my wenpage basketball gear youth

barbara wine's picture

Heya! I'm at work browsing your blog from my new apple iphone!
Just wanted to say I love reading your blog and look forward
to all your posts! Keep up the excellent work!

Also visit my blog post :: barbara wine

basketball clothing websites's picture

This post is invaluable. How can I find out more?

Alsso visit myy webpage :: basketball clothing websites

forum sexting's picture

If you are going for best contents like me, only go to see
this web site all the time since it gives quality contents, thanks

shop computer online usa's picture

My developer is trying to persuade me to move to .net
frim PHP. I have always disoiked the idea because of the costs.
But he's tryiong none the less. I've ben using Movable-type on several websites for about
a year aand am worried abot switching tto another platform.

I have heard geat things about blogengine.net. Is there a way I
can transfer all my wordpress content into it?

Any help would bbe greatly appreciated!

My blog post ... shop computer online usa

casino online malaysia's picture

Hi! I could have sworn I've visited your blog before but after browsing through a few of the articles
I realized it's new to me. Nonetheless, I'm certainly pleased I
stumbled upon it and I'll be bookmarking it and checking back frequently!

dien dan rao vat tong hop's picture

Hey! Do you know if they make any plugins to help with Search Engine Optimization?

I'm trying to get my blog to rank for some targeted keywords but I'm not seeing very good success.
If you know of any please share. Cheers!

buy gaming computer usa's picture

Hello there, just became alert to your blogg through Google, and found that it is truly informative.

I'm going to watch out for brussels. I'll be grateful if you
continue this in future.Numerous people will
be benefited from your writing. Cheers!

Feel free too visit my bpog posxt :: buy gaming computer usa

Bandar Bola Terpercaya danTerbaik's picture

Pretty nice post. I just stumbled upon your weblog and wished to say that I've really enjoyed surfing around
your blog posts. In any case I will be subscribing to your rss feed and I
hope you write again soon!

bet365 games's picture

I was curious if you ever thought of changing the page layout of your website?

Its very well written; I love what youve got to say.
But maybe you could a little more in the way of content so people could connect with it better.
Youve got an awful lot of text for only having 1 or two images.
Maybe you could space it out better?

Augusto de Arruda Botelho's picture

Its like you read my mind! You seem to know a lot about this,
like you wrote the book in it or something. I think that you can do with some pics to drive the message home a little bit, but other than that, this is great blog.
A great read. I'll definitely be back.

Clash Royale Hack No Survey's picture

Great article.

Ian Leaf Tax Fraud's picture

When I initially left a comment I seem to
have clicked on the -Notify me when new comments are added- checkbox and from now on each time a comment is added
I recieve 4 emails with the exact same comment.
Perhapss there is an easy method you can remove me from that service?

shop computer online usa's picture

I blog often and I really appreciate your information. The article has really
peaked my interest. I'm going to book mqrk your blog andd keep checking for
new details about once a week. I opted in for your RSS feed
as well.

Here is my homepage shop computer online usa

Gary Huffman's picture

First off I want to say terrific blog! I had a quick question that I'd like
to ask if you do not mind. I was interested to know how you center yourself and
clear your thoughts prior to writing. I have had a difficult time clearing my
thoughts in getting my ideas out. I truly do enjoy writing but it just seems like the first 10 to 15 minutes are generally lost simply
just trying to figure out how to begin. Any ideas or hints?


Joesph's picture

Heya i am for the first time here. I came across this board and I find It really useful & it helped
me out a lot. I hope to give something back and help others like you helped me.

too much vitamin c's picture

whoah this weblog is magnificent i really like studying your posts.
Stay up the good work! You understand, a lot of individuals are looking around
for this info, you could aid them greatly.

facebook.com's picture

That is a very good tip especially to those fresh to the blogosphere.
Simple but very precise information... Many thanks for sharing
this one. A must read post!

link's picture

hey there and thank you for your information - I've definitely picked up something new from right here.
I did however expertise several technical issues using this site,
as I experienced to reload the website a lot of times previous to I could get it to load correctly.
I had been wondering if your web host is OK? Not that I'm complaining,
but slow loading instances times will very frequently affect your placement in google and could damage your high quality score if advertising and marketing with Adwords.
Anyway I am adding this RSS to my e-mail and could look out for much more of your respective exciting content.

Make sure you update this again very soon.

My website: link

Jodi's picture

Today, while I wаs аt work, mү cousin stole mу iphone and tested tо seee if іt can survive a forty fooit drop, just soo ѕһе cаn Ƅе ɑ youtube sensation. Μү iPad iѕ noա broken and ѕһᥱ һas 83 views.
Ӏ knoow thіs іѕ totally ߋff topic but Ι ɦad tο share іt ѡith ѕomeone!

Ꭺlso visit mү ρage :: atkins diet plan (Jodi)

Gia's picture

Magnificent beat ! I wish to apprentice even as you amend your
website, how can i subscribe for a blog site? The
account helped me a ahceptable deal. I had been tiny bit acquainted of this your broadcast offered bright transparent concept

Review my website; Gia

3 week diet kindle's picture

ӏ coulԁn't refrdain from commenting.
Ԝell written!

Ⅿу site :: 3 week diet kindle

nucific review's picture

You can also eat functional fiber, which is the gummy fiber
found in oatmeal and similar foods. However, if your body is suffering from
an imbalance of 'friendly' bacteria (microflora) ' that is where
supplements such as a probiotic-infused yogurt can help to balance
our appetite, keep us feeling full and keep us losing weight.
Liquid vitamins are a practical asset to the potential of your long-term

Nayoksanya points out to make him believe's picture

There's certainly a great deal to know about this issue.
I like all the points you've made.

tratamiento de queratina para el pelo's picture

La prueba: me habian hablado de los tratamientos con keratina,
sin decirme nada de alisados ni nada, sencillamente de
que dan vida al pelo.

Ex-Cons in Society's picture

Pretty! This was an extremely wonderful article. Thank you for supplying
this information.

testing's picture

Great beat ! I would like to apprentice even as you amend your web site,
how could i subscribe for a blog web site? The account aided me a applicable deal.
I had been tiny bit familiar of this your broadcast provided shiny clear idea

Pinehills Interior decorator's picture

Designer Nate Berkus says it's actually one of the extra
widespread bed room design missteps.

Also viseit my weblog ... Pinehills Interior decorator

Dr Field Harison Mint Dentistry's picture

My brother suggested I might like this blog. He was entirely right.
This post truly made my day. You cann't imagine just how much time
I had spent for this information! Thanks!

iphone screen protector's picture

Way cool! Some very valid points! I appreciate you writing this write-up and also the rest of the
site is really good.

buy computers online usa's picture

Good response in return of this question with real arguments and explaining the whole thing regartding that.

Here is my blog pist ... buy computers online usa

Andina CEO Luke Weil's picture

Wonderful website you have here but I was wondering if you knew of any community forums
that cover the same topics talked about here?
I'd really love to be a part of group where I can get feed-back from other experienced individuals that share the
same interest. If you have any recommendations, please let me know.

harga oppo f1's picture

Pada seri asphalt 8 ini kamu bisa memainkannya secara on the web dengan beragam tantangan atau misi
yang harus kamu selesaikan untuk menjadi yang terbaik.

seo vps's picture

I believe what you composed was very logical.
But, think on this, suppose you wrote a catchier post title?
I am not suggesting your content isn't good., but suppose you added
a headline that grabbed folk's attention? I mean Add new comment | Shaneware.biz is kinda vanilla.
You could look at Yahoo's front page and note how they create post headlines to get people
interested. You might add a related video or a related picture or two to grab readers excited about what you've written. Just my opinion, it
would bring your website a little bit more interesting.

Lifetime's picture

Heya i am for the first time here.I founhd thyis bord and I
find It truly useful & it helped me out much. I hope
to gkve something back and aid others like you
aided me.

Here is my blog ... Lifetime

outbound puncak's picture

In fact when someone doesn't understand afterward its up
to other viewers that they will help, so here it happens.

basketball shoes for kids boys's picture

I really like your blog.. very nice colors & theme. Diid you
create this website yourself or did yyou hire someone
to ddo it for you? Plz respond as I'm looking to create my own blog and would like to know where u got this from.

Also visit my homepage - basketball shoes for kids boys

Jody Rookstool's picture

I do not even know how I ended up here, but I thought this post was great.
I do not know who you are but definitely you are going to a
famous blogger if you are not already ;) Cheers!

thebaysidesalon.com's picture

It's the best time to make some plans for the
future and it is time to be happy. I have read this post and if I could I desire to suggest you some interesting things or suggestions.
Maybe you can write next articles referring to this article.
I wish to read more things about it!

repairing service agency's picture

Keep on writing, great job!

Ian Leaf's picture

Hi there Dear, are you really visiting this web site regularly, if so afterward you will absolutely
get nice know-how.

Luke Weil was quoted as saying's picture

Hi! This is my 1st comment here so I just wanted to give a quick shout out and say I
genuinely enjoy reading through your articles. Can you recommend any other blogs/websites/forums
that deal with the same subjects? Thank you!

Who We Are's picture

Hi there, just became alert to your blog through Google, and found that it is really informative.
I am gonna watch out for brussels. I will be grateful if you
continue this in future. A lot of people will be benefited from your writing.

managed vps hosting's picture

When itt comes tto functionality a VPS capabilities exactly the
same as any devoted server but shares server assets with the opposite VPS on the identical server.

Here is my site managed vps hosting


Add new comment