Archive for the ‘src’ Category

The commit of the day!

Tuesday, March 11th, 2008

I just saw jhb@’s BTX commit which is very exciting. As he noted in the log, this should fix the long-standing BTX halt issue when you boot from USB cdrom (I’m also a victim). Last year, I tried with kib@’s BTX patch and it works, but it never gets committed due to other issues. Now, thank you John and Kostik. I believe this helps many users to install FreeBSD on their laptops (well, this should be in April’s snapshot?). :D

ncurses updated to 5.6-20071222

Wednesday, January 2nd, 2008

Few days ago, I updated ncurses in HEAD from 5.6 to 5.6 snapshot 20071222. Originally, I plan to directly import 5.7 which was planned to release this year end. As it is one year after 5.6, I want to import a new ncurses and see if it breaks things. Among other things, this version should fix gnu/98975. Once 5.7 is out, I will import to HEAD and then bring it to both 7-STABLE and 6-STABLE. So, it should be available in next release.

Break ABI compatibility is harmful

Thursday, November 1st, 2007

Last week, I did a MFC for fixing ctype(3) operating in UTF-8 locale (original committed by ache@). However, this breaks the forward compatibility of libc. There are many discussions on cvs-src@. In short, we have some inlined functions in _ctype.h which refer to an internal variable __mb_sb_limit of libc. As these functions are inlined, the symbol reference will be shown in your ELF binary if you include ctype.h (which includes _ctype.h). This means newly compiled binary can not run on older system. In the end, I restored the compatibility on 6.x by making these inlined functions to be compiled as non-inlined form which may hurt performance. I did not do the same for 7 and 8 as 7 is not yet released and 8 is HEAD. I would like to thank my mentor delphij@ for his help. Having a mentor who lives in complete different timezone is not a bad thing. *grin* Back to the forward compatibility issue, personally, I don’t mind the forward compatibility is broken as I never use binary from future system. However, I know there are users uses packages this way. Trading speed with compatibility may not be a bad idea, anyway.

ncurses in 6.x

Saturday, April 7th, 2007

After ncurses 5.6 sits in HEAD for two months and ncursesw for one month, I just merged all of them in 6.x. That means our ncurses is up-to-date and has wide character support in the base.

My mutt is happier now :-)

ncursesw in the base system

Friday, March 9th, 2007

After testing on pointyhat and some valuable Makefile suggestions from ru@ (of course approval/review from my mentor, delphij@), I commit ncurses wide character support into 7-CURRENT.

Next, I’m going to prepare 6.x patchset for both ncurses 5.6 update and wide character support.

libmytinfo is gone and few ports are broken

Friday, February 2nd, 2007

As requested by ache@, I removed them. The real libmytinfo exists in 3.x and below. After that, it is only a link and libncurses has its functionality. I just got krismail about 1x ports are broken. I fix 4 of them and I don’t think the rest are really broken (they only checks libmytinfo in configure). I’m building a new HEAD jail in my tinderbox, so I can test them.

I should really go to bed (it’s 5am here). :)

Now I’m punished again

Wednesday, January 31st, 2007

Half hours ago, I received a mail from core-secretary@ about my src bit. Now I’m punished again for my recent ncurses work. I would like to thank delphij@ again for mentoring me (again). Hope my collection of pointyhats will not grow too fast.

ncurses wide character support

Sunday, January 28th, 2007

Today, I spent some time to get wide character support in base’s ncurses. Basically, most work were some six months ago. I managed to get lib32 build work by defining WORLD32 in ${LIB32MAKE} and do not set ${INCS} if WORLD32 is defined. So, it looks like

.if !defined(WORLD32)
INCS= ${HEADERS} ${SRCHDRS}
INCSLINKS= curses.h ${INCLUDEDIR}/ncurses.h
.endif

I’m still running a make universe to make sure everything work. At least, amd64+lib32 and i386 build fine. On my i386 current, mutt works flawlessly with ncursesw. I will post the patch to -current once make universe is finished.

ncurses is finally updated

Saturday, January 20th, 2007

After almost four years, the base’s ncurses is finally updated to 5.6 which is released last Dec. This work starts half year ago and restarted few weeks ago. I would like to thank everyone who helped me to do this update, especially delphij@ (reviewing patch and src commit approval) and kris@ (an exp run on pointyhat).

This is my first src commit and there are few errors: I accidentally import bash.core (but cvs automatically ignores it. Thanks God!), a typo, and I forget to do a force commit before removing old ncurses build glue. Well, the best thing is buildworld is ok and the ncurses is updated.

So, the next step is to enable wide character support and merge ncurses 5.6 into RELENG_6.