Re: svn commit: r284898 - in head: . share/mk
On 27 June 2015 at 23:50, Garrett Cooper wrote: > >> On Jun 27, 2015, at 22:31, Adrian Chadd wrote: >> >>> On 27 June 2015 at 20:37, Garrett Cooper wrote: >>> On Jun 27, 2015, at 16:28, Baptiste Daroussin wrote: Author: bapt Date: Sat Jun 27 23:28:56 2015 New Revision: 284898 URL: https://svnweb.freebsd.org/changeset/base/284898 Log: Make all shared library a relative symlink This makes sysroot usable for cross building, it also removes the need for _SHLIBDIRPREFIX (keeps its definition since picobsd uses it and I have no time to test it) Differential Revision:https://reviews.freebsd.org/D2920 Submitted by:imp, adrian Tested by:adrian >>> >>> Thank you!!! Now all you need to do is fix the ldscripts (lib/libc, etc) to >>> not have absolute paths. >> >> Yup! But it's baby steps. >> >> I'm looking at the netbsd gcc patches right now to see how they fixed >> up sysroot. It doesn't look like they fully fixed gcc sysroot >> behaviour. :( > > How is it broken? ok, I figured out how to get it to work. It's not broken (this time!) The port cross gcc compiler(s) in freebsd are compiled with --without-includes, which removes /usr/include from the search path. So unless we specify it, it can't find anything in include paths. However, if you do -I/usr/include, it is an absolute path. The sysroot isn't applied to it. One must use -I=/usr/include - then the sysroot stuff gets appended correctly. So now I have dnsmasq and dropbear cross compiling successfully against a freebsd-head mips sysroot. Next up, lua and some tiny http server.. (And yes, we should also fix those linker scripts. :-) -adrian ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
On Sat, Jun 27, 2015 at 08:37:23PM -0700, Garrett Cooper wrote: > > > On Jun 27, 2015, at 16:28, Baptiste Daroussin wrote: > > > > Author: bapt > > Date: Sat Jun 27 23:28:56 2015 > > New Revision: 284898 > > URL: https://svnweb.freebsd.org/changeset/base/284898 > > > > Log: > > Make all shared library a relative symlink > > > > This makes sysroot usable for cross building, it also removes the need for > > _SHLIBDIRPREFIX (keeps its definition since picobsd uses it and I have no > > time > > to test it) > > > > Differential Revision:https://reviews.freebsd.org/D2920 > > Submitted by:imp, adrian > > Tested by:adrian > > Thank you!!! Now all you need to do is fix the ldscripts (lib/libc, etc) to > not have absolute paths. They do not (as far as I know): cat /usr/lib/libc.so /* $FreeBSD: headlibc.ldscript 258283 2013-11-17 22:52:17Z peter $ */ GROUP ( libc.so.7 libc_nonshared.a libssp_nonshared.a ) Best regards, Bapt pgpFturcL0uX_.pgp Description: PGP signature
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 12:41 AM, Baptiste Daroussin wrote: > On Sat, Jun 27, 2015 at 08:37:23PM -0700, Garrett Cooper wrote: >> >> > On Jun 27, 2015, at 16:28, Baptiste Daroussin wrote: >> > >> > Author: bapt >> > Date: Sat Jun 27 23:28:56 2015 >> > New Revision: 284898 >> > URL: https://svnweb.freebsd.org/changeset/base/284898 >> > >> > Log: >> > Make all shared library a relative symlink >> > >> > This makes sysroot usable for cross building, it also removes the need for >> > _SHLIBDIRPREFIX (keeps its definition since picobsd uses it and I have no >> > time >> > to test it) >> > >> > Differential Revision:https://reviews.freebsd.org/D2920 >> > Submitted by:imp, adrian >> > Tested by:adrian >> >> Thank you!!! Now all you need to do is fix the ldscripts (lib/libc, etc) to >> not have absolute paths. > They do not (as far as I know): > cat /usr/lib/libc.so > /* $FreeBSD: headlibc.ldscript 258283 2013-11-17 22:52:17Z peter $ */ > GROUP ( libc.so.7 libc_nonshared.a libssp_nonshared.a ) Ah, I'm guessing you fixed it [by accident/on purpose?] in this commit based on comments in bsd.lib.mk related to SHLIB_LINK... Cheers! ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 12:13 AM, Adrian Chadd wrote: ... >> How is it broken? > > ok, I figured out how to get it to work. It's not broken (this time!) > > The port cross gcc compiler(s) in freebsd are compiled with > --without-includes, which removes /usr/include from the search path. > So unless we specify it, it can't find anything in include paths. > > However, if you do -I/usr/include, it is an absolute path. The sysroot > isn't applied to it. > > One must use -I=/usr/include - then the sysroot stuff gets appended correctly. > > So now I have dnsmasq and dropbear cross compiling successfully > against a freebsd-head mips sysroot. > > Next up, lua and some tiny http server.. > > (And yes, we should also fix those linker scripts. :-) Yes, gcc options are magic... are they being documented on the wiki somewhere? ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 12:46:34AM -0700, NGie Cooper wrote: > On Sun, Jun 28, 2015 at 12:41 AM, Baptiste Daroussin wrote: > > On Sat, Jun 27, 2015 at 08:37:23PM -0700, Garrett Cooper wrote: > >> > >> > On Jun 27, 2015, at 16:28, Baptiste Daroussin wrote: > >> > > >> > Author: bapt > >> > Date: Sat Jun 27 23:28:56 2015 > >> > New Revision: 284898 > >> > URL: https://svnweb.freebsd.org/changeset/base/284898 > >> > > >> > Log: > >> > Make all shared library a relative symlink > >> > > >> > This makes sysroot usable for cross building, it also removes the need > >> > for > >> > _SHLIBDIRPREFIX (keeps its definition since picobsd uses it and I have > >> > no time > >> > to test it) > >> > > >> > Differential Revision:https://reviews.freebsd.org/D2920 > >> > Submitted by:imp, adrian > >> > Tested by:adrian > >> > >> Thank you!!! Now all you need to do is fix the ldscripts (lib/libc, etc) > >> to not have absolute paths. > > They do not (as far as I know): > > cat /usr/lib/libc.so > > /* $FreeBSD: headlibc.ldscript 258283 2013-11-17 22:52:17Z peter $ */ > > GROUP ( libc.so.7 libc_nonshared.a libssp_nonshared.a ) > > Ah, I'm guessing you fixed it [by accident/on purpose?] in this commit > based on comments in bsd.lib.mk related to SHLIB_LINK... > > Cheers! Not at all I have this on a both where I haven't yet r284898 iirc it is like this since the beginning I do not remember seeing those ld scripts with absolute path. Best regards, Bapt pgpTejtx_TswP.pgp Description: PGP signature
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin wrote: ... > Not at all I have this on a both where I haven't yet r284898 iirc it is like > this since the beginning I do not remember seeing those ld scripts with > absolute > path. $ cat /usr/lib/libc.so /* $FreeBSD$ */ GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a /usr/lib/libssp_nonshared.a ) $ what -q /boot/GENERIC.r283337+9c333ed/kernel FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 21:49:09 PDT 2015 ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 01:44:21AM -0700, NGie Cooper wrote: > On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin wrote: > ... > > Not at all I have this on a both where I haven't yet r284898 iirc it is like > > this since the beginning I do not remember seeing those ld scripts with > > absolute > > path. > > $ cat /usr/lib/libc.so > /* $FreeBSD$ */ > GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a /usr/lib/libssp_nonshared.a ) > $ what -q /boot/GENERIC.r283337+9c333ed/kernel > FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 > 21:49:09 PDT 2015 Yes you are right, I was looking at the wrong place. Best regards, Bapt pgpShdTxJ0_hL.pgp Description: PGP signature
svn commit: r284903 - head/share/misc
Author: matthew (ports committer) Date: Sun Jun 28 09:03:26 2015 New Revision: 284903 URL: https://svnweb.freebsd.org/changeset/base/284903 Log: Steve KArgl's commit bit taken in at his own request With hat: core-secretary Approved by: core Modified: head/share/misc/committers-src.dot Modified: head/share/misc/committers-src.dot == --- head/share/misc/committers-src.dot Sun Jun 28 07:44:07 2015 (r284902) +++ head/share/misc/committers-src.dot Sun Jun 28 09:03:26 2015 (r284903) @@ -61,6 +61,7 @@ jkh [label="Jordan K. Hubbard\njkh@FreeB jlemon [label="Jonathan Lemon\njle...@freebsd.org\n1997/08/14\n2008/11/10"] joe [label="Josef Karthauser\n...@freebsd.org\n1999/10/22\n2008/08/10"] jtc [label="J.T. Conklin\n...@freebsd.org\n1993/06/12\n/??/??"] +kargl [label="Steven G. Kargl\nka...@freebsd.org\n2011/01/17\n2015/06/28"] kbyanc [label="Kelly Yancey\nkby...@freebsd.org\n2000/07/11\n2006/07/25"] keichii [label="Michael Wu\nkeic...@freebsd.org\n2001/03/07\n2006/04/28"] linimon [label="Mark Linimon\nlini...@freebsd.org\n2006/09/30\n2008/05/04"] @@ -205,7 +206,6 @@ julian [label="Julian Elischer\njulian@F jwd [label="John De Boskey\n...@freebsd.org\n2000/05/19"] kaiw [label="Kai Wang\nk...@freebsd.org\n2007/09/26"] kan [label="Alexander Kabaev\n...@freebsd.org\n2002/07/21"] -kargl [label="Steven G. Kargl\nka...@freebsd.org\n2011/01/17"] ken [label="Ken Merry\n...@freebsd.org\n1998/09/08"] kensmith [label="Ken Smith\nkensm...@freebsd.org\n2004/01/23"] kevlo [label="Kevin Lo\nke...@freebsd.org\n2006/07/23"] ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284909 - head/sys/kern
Author: markm Date: Sun Jun 28 09:44:58 2015 New Revision: 284909 URL: https://svnweb.freebsd.org/changeset/base/284909 Log: ANSIfy the only function that uses K&R definition in this file. Modified: head/sys/kern/kern_kthread.c Modified: head/sys/kern/kern_kthread.c == --- head/sys/kern/kern_kthread.cSun Jun 28 09:41:10 2015 (r284908) +++ head/sys/kern/kern_kthread.cSun Jun 28 09:44:58 2015 (r284909) @@ -55,8 +55,7 @@ __FBSDID("$FreeBSD$"); * to be called from SYSINIT(). */ void -kproc_start(udata) - const void *udata; +kproc_start(const void *udata) { const struct kproc_desc *kp = udata; int error; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
On 28 Jun 2015, at 10:57, Baptiste Daroussin wrote: > > On Sun, Jun 28, 2015 at 01:44:21AM -0700, NGie Cooper wrote: >> On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin >> wrote: >> ... >>> Not at all I have this on a both where I haven't yet r284898 iirc it is like >>> this since the beginning I do not remember seeing those ld scripts with >>> absolute >>> path. >> >> $ cat /usr/lib/libc.so >> /* $FreeBSD$ */ >> GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a /usr/lib/libssp_nonshared.a >> ) >> $ what -q /boot/GENERIC.r283337+9c333ed/kernel >> FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 >> 21:49:09 PDT 2015 > > Yes you are right, I was looking at the wrong place. What is actually the perceived problem with having paths in those linker scripts? If you use --sysroot, the libraries are searched relative to that sysroot, right? (And yes, I know our gcc's sysroot implementation is broken. So please fix that instead. :-) -Dimitry signature.asc Description: Message signed with OpenPGP using GPGMail
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 11:48:48AM +0200, Dimitry Andric wrote: > On 28 Jun 2015, at 10:57, Baptiste Daroussin wrote: > > > > On Sun, Jun 28, 2015 at 01:44:21AM -0700, NGie Cooper wrote: > >> On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin > >> wrote: > >> ... > >>> Not at all I have this on a both where I haven't yet r284898 iirc it is > >>> like > >>> this since the beginning I do not remember seeing those ld scripts with > >>> absolute > >>> path. > >> > >> $ cat /usr/lib/libc.so > >> /* $FreeBSD$ */ > >> GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a > >> /usr/lib/libssp_nonshared.a ) > >> $ what -q /boot/GENERIC.r283337+9c333ed/kernel > >> FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 > >> 21:49:09 PDT 2015 > > > > Yes you are right, I was looking at the wrong place. > > What is actually the perceived problem with having paths in those linker > scripts? If you use --sysroot, the libraries are searched relative to > that sysroot, right? > > (And yes, I know our gcc's sysroot implementation is broken. So please > fix that instead. :-) > WHat is the point in having absolute path in the linker script? having an absolute patch (or even no path at all) will make the compiler looking in its search path (and respecting sysroot). The only case where a path is needed seems to be when the lib you want to link to is not in the search path. Am I missing something? Best regards, Bapt pgpZUr9vP49A2.pgp Description: PGP signature
Re: svn commit: r284898 - in head: . share/mk
On Sun, Jun 28, 2015 at 2:48 AM, Dimitry Andric wrote: > On 28 Jun 2015, at 10:57, Baptiste Daroussin wrote: >> >> On Sun, Jun 28, 2015 at 01:44:21AM -0700, NGie Cooper wrote: >>> On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin >>> wrote: >>> ... Not at all I have this on a both where I haven't yet r284898 iirc it is like this since the beginning I do not remember seeing those ld scripts with absolute path. >>> >>> $ cat /usr/lib/libc.so >>> /* $FreeBSD$ */ >>> GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a >>> /usr/lib/libssp_nonshared.a ) >>> $ what -q /boot/GENERIC.r283337+9c333ed/kernel >>> FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 >>> 21:49:09 PDT 2015 >> >> Yes you are right, I was looking at the wrong place. > > What is actually the perceived problem with having paths in those linker > scripts? If you use --sysroot, the libraries are searched relative to > that sysroot, right? > > (And yes, I know our gcc's sysroot implementation is broken. So please > fix that instead. :-) Our version of ports at $work doesn't understand --sysroot, yet. If it's fixed with --sysroot, great! This is a non-issue. If not, then this is still a problem... ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
On 28 Jun 2015, at 11:55, Baptiste Daroussin wrote: > > On Sun, Jun 28, 2015 at 11:48:48AM +0200, Dimitry Andric wrote: >> On 28 Jun 2015, at 10:57, Baptiste Daroussin wrote: >>> >>> On Sun, Jun 28, 2015 at 01:44:21AM -0700, NGie Cooper wrote: On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin wrote: ... > Not at all I have this on a both where I haven't yet r284898 iirc it is > like > this since the beginning I do not remember seeing those ld scripts with > absolute > path. $ cat /usr/lib/libc.so /* $FreeBSD$ */ GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a /usr/lib/libssp_nonshared.a ) $ what -q /boot/GENERIC.r283337+9c333ed/kernel FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 21:49:09 PDT 2015 >>> >>> Yes you are right, I was looking at the wrong place. >> >> What is actually the perceived problem with having paths in those linker >> scripts? If you use --sysroot, the libraries are searched relative to >> that sysroot, right? >> >> (And yes, I know our gcc's sysroot implementation is broken. So please >> fix that instead. :-) >> > WHat is the point in having absolute path in the linker script? Of course, the point is to know exactly *which* libraries you are going to link in. E.g., those with the specified paths, and not any other. > having an > absolute patch (or even no path at all) will make the compiler looking in its > search path (and respecting sysroot). I think you meant "relative path" here? I'm not sure if relative names like ../../foo/libbar.so will work with path searches, though. > The only case where a path is needed seems > to be when the lib you want to link to is not in the search path. Am I missing > something? You're not missing anything. Some people just seem to prefer exact paths, while others trust in search mechanisms (and the risk that the wrong library is accidentally picked up). FWIW, I don't mind removing the absolute paths in these scripts, but I was simply interested in what problems people encountered due to them. -Dimitry signature.asc Description: Message signed with OpenPGP using GPGMail
svn commit: r284910 - head/sys/kern
Author: markm Date: Sun Jun 28 10:51:08 2015 New Revision: 284910 URL: https://svnweb.freebsd.org/changeset/base/284910 Log: Ansify another function. This is the last in the file, I hope. Modified: head/sys/kern/kern_kthread.c Modified: head/sys/kern/kern_kthread.c == --- head/sys/kern/kern_kthread.cSun Jun 28 09:44:58 2015 (r284909) +++ head/sys/kern/kern_kthread.cSun Jun 28 10:51:08 2015 (r284910) @@ -224,8 +224,7 @@ kproc_suspend_check(struct proc *p) */ void -kthread_start(udata) - const void *udata; +kthread_start(const void *udata) { const struct kthread_desc *kp = udata; int error; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284911 - head/sys/sys
Author: markm Date: Sun Jun 28 12:52:28 2015 New Revision: 284911 URL: https://svnweb.freebsd.org/changeset/base/284911 Log: Add const to char * pointers. This breaks nothing, and means const chars can be passed with no warnings. Modified: head/sys/sys/kthread.h Modified: head/sys/sys/kthread.h == --- head/sys/sys/kthread.h Sun Jun 28 10:51:08 2015(r284910) +++ head/sys/sys/kthread.h Sun Jun 28 12:52:28 2015(r284911) @@ -37,14 +37,14 @@ * Note: global_procpp may be NULL for no global save area. */ struct kproc_desc { - char*arg0; /* arg 0 (for 'ps' listing) */ - void(*func)(void); /* "main" for kernel process */ + const char *arg0; /* arg 0 (for 'ps' listing) */ + void(*func)(void); /* "main" for kernel process */ struct proc **global_procpp;/* ptr to proc ptr save area */ }; /* A kernel thread descriptor; used to start "internal" daemons. */ struct kthread_desc { - char*arg0; /* arg 0 (for 'ps' listing) */ + const char *arg0; /* arg 0 (for 'ps' listing) */ void(*func)(void); /* "main" for kernel thread */ struct thread **global_threadpp; /* ptr to thread ptr save area */ }; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284898 - in head: . share/mk
I'm actively ignoring in-tree gcc and working on making sure the external toolchain and cross compiler stuff is working out okay. I'd like to eventually deorbit gcc-4.2 for MIPS and use an external toolchain (in this instance, gcc-4.9.x for now) for both building MIPS and as the compiler that will run on MIPS. Once LLVM and cross-compiling is .. better, we can use that. (But really, I'd like to see everyone doing compiler hijinx to just use the external toolchain support for testing out compilers. It'll make new CPU/board bring-up much more attractive to companies. :) -a On 28 June 2015 at 02:48, Dimitry Andric wrote: > On 28 Jun 2015, at 10:57, Baptiste Daroussin wrote: >> >> On Sun, Jun 28, 2015 at 01:44:21AM -0700, NGie Cooper wrote: >>> On Sun, Jun 28, 2015 at 12:49 AM, Baptiste Daroussin >>> wrote: >>> ... Not at all I have this on a both where I haven't yet r284898 iirc it is like this since the beginning I do not remember seeing those ld scripts with absolute path. >>> >>> $ cat /usr/lib/libc.so >>> /* $FreeBSD$ */ >>> GROUP ( /lib/libc.so.7 /usr/lib/libc_nonshared.a >>> /usr/lib/libssp_nonshared.a ) >>> $ what -q /boot/GENERIC.r283337+9c333ed/kernel >>> FreeBSD 11.0-CURRENT #4 r283337+9c333ed(isilon-atf): Tue May 26 >>> 21:49:09 PDT 2015 >> >> Yes you are right, I was looking at the wrong place. > > What is actually the perceived problem with having paths in those linker > scripts? If you use --sysroot, the libraries are searched relative to > that sysroot, right? > > (And yes, I know our gcc's sysroot implementation is broken. So please > fix that instead. :-) > > -Dimitry > ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284912 - head/usr.bin/units
Author: jmmv Date: Sun Jun 28 16:43:07 2015 New Revision: 284912 URL: https://svnweb.freebsd.org/changeset/base/284912 Log: Only initialize libedit when necessary The code path to support units conversions from the command line need not initialize neither libedit nor the history. Therefore, only do that when in interactive mode. This hides the issue reported in PR bin/201167 whereby running commands of the form 'echo "$(units ft in)"' would corrupt the terminal. The real issue causing the corruption most likely still remains somewhere. PR: bin/201167 Differential Revision:D2935 Reviewed by: eadler Modified: head/usr.bin/units/units.c Modified: head/usr.bin/units/units.c == --- head/usr.bin/units/units.c Sun Jun 28 12:52:28 2015(r284911) +++ head/usr.bin/units/units.c Sun Jun 28 16:43:07 2015(r284912) @@ -802,17 +802,6 @@ main(int argc, char **argv) if (!readfile) readunits(NULL); - inhistory = history_init(); - el = el_init(argv[0], stdin, stdout, stderr); - el_set(el, EL_PROMPT, &prompt); - el_set(el, EL_EDITOR, "emacs"); - el_set(el, EL_SIGNAL, 1); - el_set(el, EL_HIST, history, inhistory); - el_source(el, NULL); - history(inhistory, &ev, H_SETSIZE, 800); - if (inhistory == 0) - err(1, "Could not initialize history"); - if (cap_enter() < 0 && errno != ENOSYS) err(1, "unable to enter capability mode"); @@ -828,6 +817,17 @@ main(int argc, char **argv) showanswer(&have, &want); } else { + inhistory = history_init(); + el = el_init(argv[0], stdin, stdout, stderr); + el_set(el, EL_PROMPT, &prompt); + el_set(el, EL_EDITOR, "emacs"); + el_set(el, EL_SIGNAL, 1); + el_set(el, EL_HIST, history, inhistory); + el_source(el, NULL); + history(inhistory, &ev, H_SETSIZE, 800); + if (inhistory == 0) + err(1, "Could not initialize history"); + if (!quiet) printf("%d units, %d prefixes\n", unitcount, prefixcount); @@ -858,9 +858,10 @@ main(int argc, char **argv) completereduce(&want)); showanswer(&have, &want); } + + history_end(inhistory); + el_end(el); } - history_end(inhistory); - el_end(el); return (0); } ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r284912 - head/usr.bin/units
> On Jun 28, 2015, at 09:43, Julio Merino wrote: > > Author: jmmv > Date: Sun Jun 28 16:43:07 2015 > New Revision: 284912 > URL: https://svnweb.freebsd.org/changeset/base/284912 > > Log: > Only initialize libedit when necessary > > The code path to support units conversions from the command line > need not initialize neither libedit nor the history. Therefore, only do > that when in interactive mode. > > This hides the issue reported in PR bin/201167 whereby running commands > of the form 'echo "$(units ft in)"' would corrupt the terminal. The real > issue causing the corruption most likely still remains somewhere. > > PR:bin/201167 > Differential Revision:D2935 > Reviewed by:eadler Jenkins has been so messed up recently with timeouts and the like that it's hard to tell where things went south.. Can you please add your TERM and locale variables to the PR? I suspect that it might be a related issue.. ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284913 - head/usr.sbin/dconschat
Author: pfg Date: Sun Jun 28 20:32:03 2015 New Revision: 284913 URL: https://svnweb.freebsd.org/changeset/base/284913 Log: dconschat(8): Use NULL instead of 0 for the last argument in execl(3) Found while experimenting with the gcc sentinel attribute. MFC after:3 days Modified: head/usr.sbin/dconschat/dconschat.c Modified: head/usr.sbin/dconschat/dconschat.c == --- head/usr.sbin/dconschat/dconschat.c Sun Jun 28 16:43:07 2015 (r284912) +++ head/usr.sbin/dconschat/dconschat.c Sun Jun 28 20:32:03 2015 (r284913) @@ -229,7 +229,7 @@ dconschat_fork_gdb(struct dcons_state *d snprintf(buf, 256, "\n[fork %s]\n", com); write(p->outfd, buf, strlen(buf)); - execl("/bin/sh", "/bin/sh", "-c", com, 0); + execl("/bin/sh", "/bin/sh", "-c", com, NULL); snprintf(buf, 256, "\n[fork failed]\n"); write(p->outfd, buf, strlen(buf)); ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284914 - head/contrib/pf/pflogd
Author: wblock (doc committer) Date: Sun Jun 28 20:53:36 2015 New Revision: 284914 URL: https://svnweb.freebsd.org/changeset/base/284914 Log: Fix a couple of missing lines that obscured the -p description. Submitted by: Jonathan de Boyne Pollard MFC after:1 week Modified: head/contrib/pf/pflogd/pflogd.8 Modified: head/contrib/pf/pflogd/pflogd.8 == --- head/contrib/pf/pflogd/pflogd.8 Sun Jun 28 20:32:03 2015 (r284913) +++ head/contrib/pf/pflogd/pflogd.8 Sun Jun 28 20:53:36 2015 (r284914) @@ -125,9 +125,11 @@ By default, .Nm will use .Ar pflog0 . +.It Fl p Ar pidfile Writes a file containing the process ID of the program to .Pa /var/run . The file name has the form +.Ao Ar pidfile Ac Ns .pid . The default is .Ar pflogd . .It Fl s Ar snaplen ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284915 - in head: share/man/man3 sys/sys
Author: hselasky Date: Sun Jun 28 21:06:45 2015 New Revision: 284915 URL: https://svnweb.freebsd.org/changeset/base/284915 Log: Make the system queue header file fully usable within C++ programs by adding macros to define class lists. This change is backwards compatible for all use within C and C++ programs. Only C++ programs will have added support to use the queue macros within classes. Previously the queue macros could only be used within structures. The queue.3 manual page has been updated to describe the new functionality and some alphabetic sorting has been done while at it. Differential Revision:https://reviews.freebsd.org/D2745 PR: 200827 (exp-run) MFC after:2 weeks Modified: head/share/man/man3/Makefile head/share/man/man3/queue.3 head/sys/sys/queue.h Modified: head/share/man/man3/Makefile == --- head/share/man/man3/MakefileSun Jun 28 20:53:36 2015 (r284914) +++ head/share/man/man3/MakefileSun Jun 28 21:06:45 2015 (r284915) @@ -64,13 +64,15 @@ MLINKS+=fpgetround.3 fpgetmask.3 \ MLINKS+= makedev.3 major.3 \ makedev.3 minor.3 MLINKS+= ${PTHREAD_MLINKS} -MLINKS+= queue.3 LIST_EMPTY.3 \ +MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ + queue.3 LIST_CLASS_HEAD.3 \ + queue.3 LIST_EMPTY.3 \ queue.3 LIST_ENTRY.3 \ queue.3 LIST_FIRST.3 \ queue.3 LIST_FOREACH.3 \ queue.3 LIST_FOREACH_FROM.3 \ - queue.3 LIST_FOREACH_SAFE.3 \ queue.3 LIST_FOREACH_FROM_SAFE.3 \ + queue.3 LIST_FOREACH_SAFE.3 \ queue.3 LIST_HEAD.3 \ queue.3 LIST_HEAD_INITIALIZER.3 \ queue.3 LIST_INIT.3 \ @@ -81,13 +83,15 @@ MLINKS+=queue.3 LIST_EMPTY.3 \ queue.3 LIST_PREV.3 \ queue.3 LIST_REMOVE.3 \ queue.3 LIST_SWAP.3 \ + queue.3 SLIST_CLASS_ENTRY.3 \ + queue.3 SLIST_CLASS_HEAD.3 \ queue.3 SLIST_EMPTY.3 \ queue.3 SLIST_ENTRY.3 \ queue.3 SLIST_FIRST.3 \ queue.3 SLIST_FOREACH.3 \ queue.3 SLIST_FOREACH_FROM.3 \ - queue.3 SLIST_FOREACH_SAFE.3 \ queue.3 SLIST_FOREACH_FROM_SAFE.3 \ + queue.3 SLIST_FOREACH_SAFE.3 \ queue.3 SLIST_HEAD.3 \ queue.3 SLIST_HEAD_INITIALIZER.3 \ queue.3 SLIST_INIT.3 \ @@ -98,14 +102,16 @@ MLINKS+= queue.3 LIST_EMPTY.3 \ queue.3 SLIST_REMOVE_AFTER.3 \ queue.3 SLIST_REMOVE_HEAD.3 \ queue.3 SLIST_SWAP.3 \ + queue.3 STAILQ_CLASS_ENTRY.3 \ + queue.3 STAILQ_CLASS_HEAD.3 \ queue.3 STAILQ_CONCAT.3 \ queue.3 STAILQ_EMPTY.3 \ queue.3 STAILQ_ENTRY.3 \ queue.3 STAILQ_FIRST.3 \ queue.3 STAILQ_FOREACH.3 \ queue.3 STAILQ_FOREACH_FROM.3 \ - queue.3 STAILQ_FOREACH_SAFE.3 \ queue.3 STAILQ_FOREACH_FROM_SAFE.3 \ + queue.3 STAILQ_FOREACH_SAFE.3 \ queue.3 STAILQ_HEAD.3 \ queue.3 STAILQ_HEAD_INITIALIZER.3 \ queue.3 STAILQ_INIT.3 \ @@ -118,18 +124,20 @@ MLINKS+= queue.3 LIST_EMPTY.3 \ queue.3 STAILQ_REMOVE_AFTER.3 \ queue.3 STAILQ_REMOVE_HEAD.3 \ queue.3 STAILQ_SWAP.3 \ + queue.3 TAILQ_CLASS_ENTRY.3 \ + queue.3 TAILQ_CLASS_HEAD.3 \ queue.3 TAILQ_CONCAT.3 \ queue.3 TAILQ_EMPTY.3 \ queue.3 TAILQ_ENTRY.3 \ queue.3 TAILQ_FIRST.3 \ queue.3 TAILQ_FOREACH.3 \ queue.3 TAILQ_FOREACH_FROM.3 \ + queue.3 TAILQ_FOREACH_FROM_SAFE.3 \ queue.3 TAILQ_FOREACH_REVERSE.3 \ queue.3 TAILQ_FOREACH_REVERSE_FROM.3 \ - queue.3 TAILQ_FOREACH_REVERSE_SAFE.3 \ queue.3 TAILQ_FOREACH_REVERSE_FROM_SAFE.3 \ + queue.3 TAILQ_FOREACH_REVERSE_SAFE.3 \ queue.3 TAILQ_FOREACH_SAFE.3 \ - queue.3 TAILQ_FOREACH_FROM_SAFE.3 \ queue.3 TAILQ_HEAD.3 \ queue.3 TAILQ_HEAD_INITIALIZER.3 \ queue.3 TAILQ_INIT.3 \ Modified: head/share/man/man3/queue.3 == --- head/share/man/man3/queue.3 Sun Jun 28 20:53:36 2015(r284914) +++ head/share/man/man3/queue.3 Sun Jun 28 21:06:45 2015(r284915) @@ -28,35 +28,39 @@ .\"@(#)queue.3 8.2 (Berkeley) 1/24/94 .\" $FreeBSD$ .\" -.Dd April 16, 2015 +.Dd June 24, 2015 .Dt QUEUE 3 .Os .Sh NAME +.Nm SLIST_CLASS_ENTRY , +.Nm S
svn commit: r284916 - head/bin/mv
Author: jilles Date: Sun Jun 28 21:36:00 2015 New Revision: 284916 URL: https://svnweb.freebsd.org/changeset/base/284916 Log: mv: Improve message when moving two or more files to non-directory. The message text is from cp, which has had a nicer message for this since 2007 (PR bin/50656). As with cp, the exit status changes from 64 to 1. PR: 201083 MFC after:1 week Modified: head/bin/mv/mv.c Modified: head/bin/mv/mv.c == --- head/bin/mv/mv.cSun Jun 28 21:06:45 2015(r284915) +++ head/bin/mv/mv.cSun Jun 28 21:36:00 2015(r284916) @@ -122,7 +122,7 @@ main(int argc, char *argv[]) */ if (stat(argv[argc - 1], &sb) || !S_ISDIR(sb.st_mode)) { if (argc > 2) - usage(); + errx(1, "%s is not a directory", argv[argc - 1]); exit(do_move(argv[0], argv[1])); } ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284917 - head/sys/sys
Author: pfg Date: Mon Jun 29 00:30:30 2015 New Revision: 284917 URL: https://svnweb.freebsd.org/changeset/base/284917 Log: Add a new __sentinel attribute. The sentinel attribute was originally implemented in OpenBSD's gcc and later adopted by upstream GCC 4.0 (and clang). From the OpenBSD's gcc-local manpage: - gcc recognizes the extra attribute __sentinel__, which can be used to mark varargs function that need a NULL pointer to mark argument termination, like execl(3). This exposes latent bugs for 64-bit architectures, where a terminating 0 will expand to a 32-bit int, and not a full-fledged 64-bits pointer. While here sort the visibility attributes. Hinted-by:OpenBSD Modified: head/sys/sys/cdefs.h Modified: head/sys/sys/cdefs.h == --- head/sys/sys/cdefs.hSun Jun 28 21:36:00 2015(r284916) +++ head/sys/sys/cdefs.hMon Jun 29 00:30:30 2015(r284917) @@ -469,11 +469,13 @@ #endif #if __GNUC_PREREQ__(4, 0) -#define__hidden__attribute__((__visibility__("hidden"))) +#define__sentinel __attribute__((__sentinel__)) #define__exported __attribute__((__visibility__("default"))) +#define__hidden__attribute__((__visibility__("hidden"))) #else -#define__hidden +#define__sentinel #define__exported +#define__hidden #endif /* ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r284918 - in head/sys/i386: i386 include
Author: kib Date: Mon Jun 29 06:59:08 2015 New Revision: 284918 URL: https://svnweb.freebsd.org/changeset/base/284918 Log: Reduce code duplication. Add helper fill_based_sd(9) which creates a based user data descriptor covering whole VA. Sponsored by: The FreeBSD Foundation MFC after:2 weeks Modified: head/sys/i386/i386/sys_machdep.c head/sys/i386/include/md_var.h Modified: head/sys/i386/i386/sys_machdep.c == --- head/sys/i386/i386/sys_machdep.cMon Jun 29 00:30:30 2015 (r284917) +++ head/sys/i386/i386/sys_machdep.cMon Jun 29 06:59:08 2015 (r284918) @@ -74,6 +74,22 @@ static int i386_set_ldt_data(struct thre union descriptor *descs); static int i386_ldt_grow(struct thread *td, int len); +void +fill_based_sd(struct segment_descriptor *sdp, uint32_t base) +{ + + sdp->sd_lobase = base & 0xff; + sdp->sd_hibase = (base >> 24) & 0xff; + sdp->sd_lolimit = 0x; /* 4GB limit, wraps around */ + sdp->sd_hilimit = 0xf; + sdp->sd_type = SDT_MEMRWA; + sdp->sd_dpl = SEL_UPL; + sdp->sd_p = 1; + sdp->sd_xx = 0; + sdp->sd_def32 = 1; + sdp->sd_gran = 1; +} + #ifndef _SYS_SYSPROTO_H_ struct sysarch_args { int op; @@ -188,23 +204,14 @@ sysarch(td, uap) break; case I386_SET_FSBASE: error = copyin(uap->parms, &base, sizeof(base)); - if (!error) { + if (error == 0) { /* * Construct a descriptor and store it in the pcb for * the next context switch. Also store it in the gdt * so that the load of tf_fs into %fs will activate it * at return to userland. */ - sd.sd_lobase = base & 0xff; - sd.sd_hibase = (base >> 24) & 0xff; - sd.sd_lolimit = 0x; /* 4GB limit, wraps around */ - sd.sd_hilimit = 0xf; - sd.sd_type = SDT_MEMRWA; - sd.sd_dpl = SEL_UPL; - sd.sd_p = 1; - sd.sd_xx= 0; - sd.sd_def32 = 1; - sd.sd_gran = 1; + fill_based_sd(&sd, base); critical_enter(); td->td_pcb->pcb_fsd = sd; PCPU_GET(fsgs_gdt)[0] = sd; @@ -219,23 +226,13 @@ sysarch(td, uap) break; case I386_SET_GSBASE: error = copyin(uap->parms, &base, sizeof(base)); - if (!error) { + if (error == 0) { /* * Construct a descriptor and store it in the pcb for * the next context switch. Also store it in the gdt * because we have to do a load_gs() right now. */ - sd.sd_lobase = base & 0xff; - sd.sd_hibase = (base >> 24) & 0xff; - - sd.sd_lolimit = 0x; /* 4GB limit, wraps around */ - sd.sd_hilimit = 0xf; - sd.sd_type = SDT_MEMRWA; - sd.sd_dpl = SEL_UPL; - sd.sd_p = 1; - sd.sd_xx= 0; - sd.sd_def32 = 1; - sd.sd_gran = 1; + fill_based_sd(&sd, base); critical_enter(); td->td_pcb->pcb_gsd = sd; PCPU_GET(fsgs_gdt)[1] = sd; Modified: head/sys/i386/include/md_var.h == --- head/sys/i386/include/md_var.h Mon Jun 29 00:30:30 2015 (r284917) +++ head/sys/i386/include/md_var.h Mon Jun 29 06:59:08 2015 (r284918) @@ -94,6 +94,7 @@ structreg; struct fpreg; struct dbreg; struct dumperinfo; +struct segment_descriptor; void *alloc_fpusave(int flags); void bcopyb(const void *from, void *to, size_t len); @@ -114,6 +115,7 @@ voiddump_add_page(vm_paddr_t); void dump_drop_page(vm_paddr_t); void finishidentcpu(void); void fillw(int /*u_short*/ pat, void *base, size_t cnt); +void fill_based_sd(struct segment_descriptor *sdp, uint32_t base); void initializecpu(void); void initializecpucache(void); void i686_pagezero(void *addr); ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"