<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><br></div></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jun 6, 2020 at 5:27 PM Christian Mauderer <<a href="mailto:contact@c-mauderer.de" target="_blank">contact@c-mauderer.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 04/06/2020 19:43, G S Niteesh Babu wrote:<br>
> This file serve the purpose as rtems-bsd-kernel-space.h in the<br>
> rtems-libbsd.<br>
> This file is intended to be included in every source file that<br>
> is to imported from FreeBSD. This is to reduce the number of<br>
> redefinitions for commonly used functions like malloc, free<br>
> and KASSERT.<br>
> ---<br>
>  cpukit/libfreebsd/rtems-freebsd-helper.h | 45 ++++++++++++++++++++++++<br>
>  1 file changed, 45 insertions(+)<br>
>  create mode 100644 cpukit/libfreebsd/rtems-freebsd-helper.h<br>
> <br>
> diff --git a/cpukit/libfreebsd/rtems-freebsd-helper.h b/cpukit/libfreebsd/rtems-freebsd-helper.h<br>
<br>
How do you plan to include it? Currently you would need a<br>
<br>
#include "../../../rtems-freebsd-helper.h"<br>
<br>
right? Can become a bit hard to count the .. with a deep directory tree.<br></blockquote><div><br></div><div><div class="gmail_default" style="font-size:small">The right place for this file would be the standard include path. Since we haven't decided</div><div class="gmail_default" style="font-size:small">on this, I placed it temporarily here.</div><div class="gmail_default" style="font-size:small">If we can add libfreebsd to the include path that will be really nice because this will allow<br></div><div class="gmail_default" style="font-size:small">us to have the same include path as in FreeBSD.</div><div class="gmail_default" style="font-size:small">i.e.</div></div><div class="gmail_default" style="font-size:small">The openfirm.h is included in FreeBSD sources as</div><div class="gmail_default" style="font-size:small">#include <dev/ofw/openfirm.h></div><div class="gmail_default" style="font-size:small">Including libfreebsd to include path will let us do the same.</div></div><div class="gmail_quote"><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
> new file mode 100644<br>
> index 0000000000..1b9b7609f9<br>
> --- /dev/null<br>
> +++ b/cpukit/libfreebsd/rtems-freebsd-helper.h<br>
> @@ -0,0 +1,45 @@<br>
> +<br>
> +/* SPDX-License-Identifier: BSD-2-Clause<br>
> +<br>
> + *<br>
> + * @file<br>
> + *<br>
> + * @ingroup LIBFREEBSD<br>
<br>
You have a group LIBFREEBSD here. Earlier you had a LIBFREEBSDOFW. Do<br>
you really want multiple groups? I would suggest to start with one for<br>
the new libfreebsd subsystem.<br></blockquote><div><br></div><div><div class="gmail_default" style="font-size:small">I changed everything to LIBFREEBSD.</div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
> + *<br>
> + * @brief<br>
> + */<br>
> +<br>
> +/*<br>
> + * Copyright (C) <2020> Niteesh Babu <<a href="mailto:niteesh.gs@gmail.com" target="_blank">niteesh.gs@gmail.com</a>><br>
> + *<br>
> + * Redistribution and use in source and binary forms, with or without<br>
> + * modification, are permitted provided that the following conditions<br>
> + * are met:<br>
> + * 1. Redistributions of source code must retain the above copyright<br>
> + *    notice, this list of conditions and the following disclaimer.<br>
> + * 2. Redistributions in binary form must reproduce the above copyright<br>
> + *    notice, this list of conditions and the following disclaimer in the<br>
> + *    documentation and/or other materials provided with the distribution.<br>
> + *<br>
> + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"<br>
> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE<br>
> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE<br>
> + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE<br>
> + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR<br>
> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF<br>
> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS<br>
> + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN<br>
> + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)<br>
> + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE<br>
> + * POSSIBILITY OF SUCH DAMAGE.<br>
> + */<br>
> +<br>
> +#ifndef _LIBFREEBSD_RTEMS_FREEBSD_HELPER_H<br>
> +#define _LIBFREEBSD_RTEMS_FREEBSD_HELPER_H<br>
> +<br>
> +#define _KERNEL                                              1<br>
> +#define KASSERT(cnd, msg)                    assert(cnd)<br>
> +#define malloc(size, type, flags)    malloc(size)<br>
> +#define free(addr, type)                     free(addr)<br>
<br>
The tabs between the define name and the value seem a bit random here.<br>
Please try to use FreeBSD style (I really hope I don't start a<br>
discussion now whether we should use RTEMS style instead for new files).<br>
<br>
<a href="https://www.freebsd.org/cgi/man.cgi?query=style&apropos=0&sektion=9" rel="noreferrer" target="_blank">https://www.freebsd.org/cgi/man.cgi?query=style&apropos=0&sektion=9</a><br>
<br>
If it's not clear there: Take a look at some FreeBSD files.<br></blockquote><div><div class="gmail_default" style="font-size:small">I'll fix this.</div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
> +<br>
> +#endif /* _LIBFREEBSD_RTEMS_FREEBSD_HELPER_H */<br>
> \ No newline at end of file<br>
> <br>
</blockquote></div></div>