public inbox for libc-ports@sourceware.org
 help / color / mirror / Atom feed
From: Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com>
To: "Joseph S. Myers" <joseph@codesourcery.com>
Cc: libc-ports@sourceware.org
Subject: Re: Move shared sysdeps files from alpha to arm
Date: Sat, 08 Feb 2014 02:13:00 -0000	[thread overview]
Message-ID: <CAAHN_R3BtqGj+W2n_cui=4049yzs96B2i6s-_h8RNFNSzsAfsQ@mail.gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1402080118370.12232@digraph.polyomino.org.uk>

Looks good to me.

Thanks,
Siddhesh

On 8 February 2014 06:49, Joseph S. Myers <joseph@codesourcery.com> wrote:
> This patch prepares for moving arm from ports to libc (see overall
> plan at <https://sourceware.org/ml/libc-alpha/2014-01/msg00373.html>
> and discussion of ordering starting at
> <https://sourceware.org/ml/libc-ports/2014-01/msg00071.html>) by
> reversing the #include order between arm and alpha, so that arm can
> move early as a test for the general pattern of moving architectures.
> MicroBlaze files (that used the same alpha files) were made to include
> the files directly from their new locations rather than indirecting.
>
> Tested that disassembly of installed shared libraries for arm is the
> same before and after this patch and committed.
>
> ports/ChangeLog.alpha:
> 2014-02-08  Joseph Myers  <joseph@codesourcery.com>
>
>         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Move to
>         sysdeps/unix/sysv/linux/arm/msgctl.c and #include that file.
>         * sysdeps/unix/sysv/linux/alpha/semctl.c: Move to
>         sysdeps/unix/sysv/linux/arm/semctl.c and #include that file.
>         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Move to
>         sysdeps/unix/sysv/linux/arm/shmctl.c and #include that file.
>
> ports/ChangeLog.arm:
> 2014-02-08  Joseph Myers  <joseph@codesourcery.com>
>
>         * sysdeps/unix/sysv/linux/arm/msgctl.c: Move from
>         sysdeps/unix/sysv/linux/alpha/msgctl.c instead of #include of that
>         file.
>         * sysdeps/unix/sysv/linux/arm/semctl.c: Move from
>         sysdeps/unix/sysv/linux/alpha/semctl.c instead of #include of that
>         file.
>         * sysdeps/unix/sysv/linux/arm/shmctl.c: Move from
>         sysdeps/unix/sysv/linux/alpha/shmctl.c instead of #include of that
>         file.
>
> ports/ChangeLog.microblaze:
> 2014-02-08  Joseph Myers  <joseph@codesourcery.com>
>
>         * sysdeps/unix/sysv/linux/microblaze/msgctl.c: Include
>         sysdeps/unix/sysv/linux/arm/msgctl.c instead of
>         sysdeps/unix/sysv/linux/alpha/msgctl.c.
>         * sysdeps/unix/sysv/linux/microblaze/semctl.c: Include
>         sysdeps/unix/sysv/linux/arm/semctl.c instead of
>         sysdeps/unix/sysv/linux/alpha/semctl.c.
>         * sysdeps/unix/sysv/linux/microblaze/shmctl.c: Include
>         sysdeps/unix/sysv/linux/arm/shmctl.c instead of
>         sysdeps/unix/sysv/linux/alpha/shmctl.c.
>
> diff --git a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c b/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c
> index a0b6cb4..d65a5b9 100644
> --- a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c
> @@ -1,33 +1 @@
> -/* Copyright (C) 1995-2014 Free Software Foundation, Inc.
> -   This file is part of the GNU C Library.
> -   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
> -
> -   The GNU C Library is free software; you can redistribute it and/or
> -   modify it under the terms of the GNU Lesser General Public
> -   License as published by the Free Software Foundation; either
> -   version 2.1 of the License, or (at your option) any later version.
> -
> -   The GNU C Library is distributed in the hope that it will be useful,
> -   but WITHOUT ANY WARRANTY; without even the implied warranty of
> -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> -   Lesser General Public License for more details.
> -
> -   You should have received a copy of the GNU Lesser General Public
> -   License along with the GNU C Library.  If not, see
> -   <http://www.gnu.org/licenses/>.  */
> -
> -#include <errno.h>
> -#include <sys/msg.h>
> -#include <ipc_priv.h>
> -#include <sysdep.h>
> -#include <sys/syscall.h>
> -
> -
> -int
> -__new_msgctl (int msqid, int cmd, struct msqid_ds *buf)
> -{
> -  return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, buf);
> -}
> -
> -#include <shlib-compat.h>
> -versioned_symbol (libc, __new_msgctl, msgctl, GLIBC_2_2);
> +#include <sysdeps/unix/sysv/linux/arm/msgctl.c>
> diff --git a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c b/ports/sysdeps/unix/sysv/linux/alpha/semctl.c
> index a45863b..4cb834a 100644
> --- a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/alpha/semctl.c
> @@ -1,54 +1 @@
> -/* Copyright (C) 1995-2014 Free Software Foundation, Inc.
> -   This file is part of the GNU C Library.
> -   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
> -
> -   The GNU C Library is free software; you can redistribute it and/or
> -   modify it under the terms of the GNU Lesser General Public
> -   License as published by the Free Software Foundation; either
> -   version 2.1 of the License, or (at your option) any later version.
> -
> -   The GNU C Library is distributed in the hope that it will be useful,
> -   but WITHOUT ANY WARRANTY; without even the implied warranty of
> -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> -   Lesser General Public License for more details.
> -
> -   You should have received a copy of the GNU Lesser General Public
> -   License along with the GNU C Library.  If not, see
> -   <http://www.gnu.org/licenses/>.  */
> -
> -#include <errno.h>
> -#include <stdarg.h>
> -#include <sys/sem.h>
> -#include <ipc_priv.h>
> -#include <sysdep.h>
> -#include <sys/syscall.h>
> -
> -
> -/* Define a `union semun' suitable for Linux here.  */
> -union semun
> -{
> -  int val;                     /* value for SETVAL */
> -  struct semid_ds *buf;                /* buffer for IPC_STAT & IPC_SET */
> -  unsigned short int *array;   /* array for GETALL & SETALL */
> -  struct seminfo *__buf;       /* buffer for IPC_INFO */
> -};
> -
> -int
> -__new_semctl (int semid, int semnum, int cmd, ...)
> -{
> -  union semun arg;
> -  va_list ap;
> -
> -  va_start (ap, cmd);
> -
> -  /* Get the argument.  */
> -  arg = va_arg (ap, union semun);
> -
> -  va_end (ap);
> -
> -  return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64,
> -                        arg.array);
> -}
> -
> -#include <shlib-compat.h>
> -versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2);
> +#include <sysdeps/unix/sysv/linux/arm/semctl.c>
> diff --git a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c b/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c
> index eed4c8d..f73ed6f 100644
> --- a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c
> @@ -1,34 +1 @@
> -/* Copyright (C) 1995-2014 Free Software Foundation, Inc.
> -   This file is part of the GNU C Library.
> -   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
> -
> -   The GNU C Library is free software; you can redistribute it and/or
> -   modify it under the terms of the GNU Lesser General Public
> -   License as published by the Free Software Foundation; either
> -   version 2.1 of the License, or (at your option) any later version.
> -
> -   The GNU C Library is distributed in the hope that it will be useful,
> -   but WITHOUT ANY WARRANTY; without even the implied warranty of
> -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> -   Lesser General Public License for more details.
> -
> -   You should have received a copy of the GNU Lesser General Public
> -   License along with the GNU C Library.  If not, see
> -   <http://www.gnu.org/licenses/>.  */
> -
> -#include <errno.h>
> -#include <sys/shm.h>
> -#include <ipc_priv.h>
> -#include <sysdep.h>
> -#include <sys/syscall.h>
> -#include <bits/wordsize.h>
> -
> -
> -int
> -__new_shmctl (int shmid, int cmd, struct shmid_ds *buf)
> -{
> -  return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, buf);
> -}
> -
> -#include <shlib-compat.h>
> -versioned_symbol (libc, __new_shmctl, shmctl, GLIBC_2_2);
> +#include <sysdeps/unix/sysv/linux/arm/shmctl.c>
> diff --git a/ports/sysdeps/unix/sysv/linux/arm/msgctl.c b/ports/sysdeps/unix/sysv/linux/arm/msgctl.c
> index 38aedad..a0b6cb4 100644
> --- a/ports/sysdeps/unix/sysv/linux/arm/msgctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/arm/msgctl.c
> @@ -1 +1,33 @@
> -#include <sysdeps/unix/sysv/linux/alpha/msgctl.c>
> +/* Copyright (C) 1995-2014 Free Software Foundation, Inc.
> +   This file is part of the GNU C Library.
> +   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
> +
> +   The GNU C Library is free software; you can redistribute it and/or
> +   modify it under the terms of the GNU Lesser General Public
> +   License as published by the Free Software Foundation; either
> +   version 2.1 of the License, or (at your option) any later version.
> +
> +   The GNU C Library is distributed in the hope that it will be useful,
> +   but WITHOUT ANY WARRANTY; without even the implied warranty of
> +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> +   Lesser General Public License for more details.
> +
> +   You should have received a copy of the GNU Lesser General Public
> +   License along with the GNU C Library.  If not, see
> +   <http://www.gnu.org/licenses/>.  */
> +
> +#include <errno.h>
> +#include <sys/msg.h>
> +#include <ipc_priv.h>
> +#include <sysdep.h>
> +#include <sys/syscall.h>
> +
> +
> +int
> +__new_msgctl (int msqid, int cmd, struct msqid_ds *buf)
> +{
> +  return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, buf);
> +}
> +
> +#include <shlib-compat.h>
> +versioned_symbol (libc, __new_msgctl, msgctl, GLIBC_2_2);
> diff --git a/ports/sysdeps/unix/sysv/linux/arm/semctl.c b/ports/sysdeps/unix/sysv/linux/arm/semctl.c
> index 1451629..a45863b 100644
> --- a/ports/sysdeps/unix/sysv/linux/arm/semctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/arm/semctl.c
> @@ -1 +1,54 @@
> -#include <sysdeps/unix/sysv/linux/alpha/semctl.c>
> +/* Copyright (C) 1995-2014 Free Software Foundation, Inc.
> +   This file is part of the GNU C Library.
> +   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
> +
> +   The GNU C Library is free software; you can redistribute it and/or
> +   modify it under the terms of the GNU Lesser General Public
> +   License as published by the Free Software Foundation; either
> +   version 2.1 of the License, or (at your option) any later version.
> +
> +   The GNU C Library is distributed in the hope that it will be useful,
> +   but WITHOUT ANY WARRANTY; without even the implied warranty of
> +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> +   Lesser General Public License for more details.
> +
> +   You should have received a copy of the GNU Lesser General Public
> +   License along with the GNU C Library.  If not, see
> +   <http://www.gnu.org/licenses/>.  */
> +
> +#include <errno.h>
> +#include <stdarg.h>
> +#include <sys/sem.h>
> +#include <ipc_priv.h>
> +#include <sysdep.h>
> +#include <sys/syscall.h>
> +
> +
> +/* Define a `union semun' suitable for Linux here.  */
> +union semun
> +{
> +  int val;                     /* value for SETVAL */
> +  struct semid_ds *buf;                /* buffer for IPC_STAT & IPC_SET */
> +  unsigned short int *array;   /* array for GETALL & SETALL */
> +  struct seminfo *__buf;       /* buffer for IPC_INFO */
> +};
> +
> +int
> +__new_semctl (int semid, int semnum, int cmd, ...)
> +{
> +  union semun arg;
> +  va_list ap;
> +
> +  va_start (ap, cmd);
> +
> +  /* Get the argument.  */
> +  arg = va_arg (ap, union semun);
> +
> +  va_end (ap);
> +
> +  return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64,
> +                        arg.array);
> +}
> +
> +#include <shlib-compat.h>
> +versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2);
> diff --git a/ports/sysdeps/unix/sysv/linux/arm/shmctl.c b/ports/sysdeps/unix/sysv/linux/arm/shmctl.c
> index c121e99..eed4c8d 100644
> --- a/ports/sysdeps/unix/sysv/linux/arm/shmctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/arm/shmctl.c
> @@ -1 +1,34 @@
> -#include <sysdeps/unix/sysv/linux/alpha/shmctl.c>
> +/* Copyright (C) 1995-2014 Free Software Foundation, Inc.
> +   This file is part of the GNU C Library.
> +   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
> +
> +   The GNU C Library is free software; you can redistribute it and/or
> +   modify it under the terms of the GNU Lesser General Public
> +   License as published by the Free Software Foundation; either
> +   version 2.1 of the License, or (at your option) any later version.
> +
> +   The GNU C Library is distributed in the hope that it will be useful,
> +   but WITHOUT ANY WARRANTY; without even the implied warranty of
> +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> +   Lesser General Public License for more details.
> +
> +   You should have received a copy of the GNU Lesser General Public
> +   License along with the GNU C Library.  If not, see
> +   <http://www.gnu.org/licenses/>.  */
> +
> +#include <errno.h>
> +#include <sys/shm.h>
> +#include <ipc_priv.h>
> +#include <sysdep.h>
> +#include <sys/syscall.h>
> +#include <bits/wordsize.h>
> +
> +
> +int
> +__new_shmctl (int shmid, int cmd, struct shmid_ds *buf)
> +{
> +  return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, buf);
> +}
> +
> +#include <shlib-compat.h>
> +versioned_symbol (libc, __new_shmctl, shmctl, GLIBC_2_2);
> diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c b/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c
> index 38aedad..d65a5b9 100644
> --- a/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c
> @@ -1 +1 @@
> -#include <sysdeps/unix/sysv/linux/alpha/msgctl.c>
> +#include <sysdeps/unix/sysv/linux/arm/msgctl.c>
> diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c b/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c
> index 1451629..4cb834a 100644
> --- a/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c
> @@ -1 +1 @@
> -#include <sysdeps/unix/sysv/linux/alpha/semctl.c>
> +#include <sysdeps/unix/sysv/linux/arm/semctl.c>
> diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c b/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c
> index c121e99..f73ed6f 100644
> --- a/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c
> +++ b/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c
> @@ -1 +1 @@
> -#include <sysdeps/unix/sysv/linux/alpha/shmctl.c>
> +#include <sysdeps/unix/sysv/linux/arm/shmctl.c>
>
> --
> Joseph S. Myers
> joseph@codesourcery.com



-- 
http://siddhesh.in

  reply	other threads:[~2014-02-08  2:13 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-08  1:19 Joseph S. Myers
2014-02-08  2:13 ` Siddhesh Poyarekar [this message]
2014-02-08 14:26 ` Mike Frysinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAAHN_R3BtqGj+W2n_cui=4049yzs96B2i6s-_h8RNFNSzsAfsQ@mail.gmail.com' \
    --to=siddhesh.poyarekar@gmail.com \
    --cc=joseph@codesourcery.com \
    --cc=libc-ports@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).