diff options
Diffstat (limited to 'abs')
| -rw-r--r-- | abs/extra/mcpp/PKGBUILD | 35 | ||||
| -rw-r--r-- | abs/extra/mcpp/fs28284.patch | 100 | ||||
| -rw-r--r-- | abs/extra/mcpp/namlen.patch | 11 | 
3 files changed, 146 insertions, 0 deletions
| diff --git a/abs/extra/mcpp/PKGBUILD b/abs/extra/mcpp/PKGBUILD new file mode 100644 index 0000000..6ed62f1 --- /dev/null +++ b/abs/extra/mcpp/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 159222 2012-05-18 11:58:32Z jgc $ +# Maintainer: Alexander Baldeck <alexander@archlinux.org> +# Contributor: Jan de Groot <jgc@archlinux.org> + +pkgname=mcpp +pkgver=2.7.2 +pkgrel=4 +pkgdesc="Matsui's CPP implementation precisely conformed to standards" +arch=('i686' 'x86_64') +license=('custom') +url="http://mcpp.sourceforge.net" +depends=('glibc') +options=('!libtool') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz +        namlen.patch +        fs28284.patch) +md5sums=('512de48c87ab023a69250edc7a0c7b05' +         '0bfc6177a58e912a9e23e368578dd3fe' +         'ba668fc6996e538f2e0c096f9eb282ce') + +build() { +  cd "${srcdir}/${pkgname}-${pkgver}" +  patch -Np1 -i "${srcdir}/namlen.patch" +  patch -Np1 -i "${srcdir}/fs28284.patch" +  ./configure --prefix=/usr --enable-mcpplib --disable-static +  make +} + +package() { +  cd "${srcdir}/${pkgname}-${pkgver}" +  make DESTDIR="${pkgdir}" install + +  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" +  ln -sf ../../doc/${pkgname}/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/abs/extra/mcpp/fs28284.patch b/abs/extra/mcpp/fs28284.patch new file mode 100644 index 0000000..960203c --- /dev/null +++ b/abs/extra/mcpp/fs28284.patch @@ -0,0 +1,100 @@ +diff -c -r -N ../mcpp-2.7.2/src/internal.H ./src/internal.H +*** ../mcpp-2.7.2/src/internal.H	2008-08-27 10:31:16.000000000 -0230 +--- ./src/internal.H	2009-12-17 21:01:35.000000000 -0330 +*************** +*** 390,395 **** +--- 390,397 ---- +  extern char     identifier[];       /* Lastly scanned name          */ +  extern IFINFO   ifstack[];          /* Information of #if nesting   */ +  extern char     work_buf[]; ++ extern FILEINFO * sh_file; ++ extern int      sh_line; +          /* Temporary buffer for directive line and macro expansion  */ +   +  /* main.c   */ +*************** +*** 557,562 **** +  #endif +  #endif +   +! #if HOST_HAVE_STPCPY +  extern char *   stpcpy( char * dest, const char * src); +  #endif +--- 559,564 ---- +  #endif +  #endif +   +! #if HOST_HAVE_STPCPY && !defined(stpcpy) +  extern char *   stpcpy( char * dest, const char * src); +  #endif +diff -c -r -N ../mcpp-2.7.2/src/main.c ./src/main.c +*** ../mcpp-2.7.2/src/main.c	2008-11-05 05:04:46.000000000 -0330 +--- ./src/main.c	2009-12-17 20:42:42.000000000 -0330 +*************** +*** 326,331 **** +--- 326,333 ---- +              = FALSE; +      option_flags.trig = TRIGRAPHS_INIT; +      option_flags.dig = DIGRAPHS_INIT; ++     sh_file = NULL; ++     sh_line = 0; +  } +   +  int     mcpp_lib_main +diff -c -r -N ../mcpp-2.7.2/src/support.c ./src/support.c +*** ../mcpp-2.7.2/src/support.c	2008-06-10 06:02:33.000000000 -0230 +--- ./src/support.c	2009-12-17 20:42:39.000000000 -0330 +*************** +*** 188,194 **** +      size_t      length +  ) +  { +!     if (mem_buf_p->bytes_avail < length) {  /* Need to allocate more memory */ +          size_t size = MAX( BUF_INCR_SIZE, length); +   +          if (mem_buf_p->buffer == NULL) {            /* 1st append   */ +--- 188,194 ---- +      size_t      length +  ) +  { +!     if (mem_buf_p->bytes_avail < length + 1) {  /* Need to allocate more memory */ +          size_t size = MAX( BUF_INCR_SIZE, length); +   +          if (mem_buf_p->buffer == NULL) {            /* 1st append   */ +*************** +*** 1722,1727 **** +--- 1722,1729 ---- +                      sp -= 2; +                      while (*sp != '\n')     /* Until end of line    */ +                          mcpp_fputc( *sp++, OUT); ++                     mcpp_fputc( '\n', OUT); ++                     wrong_line = TRUE; +                  } +                  goto  end_line; +              default:                        /* Not a comment        */ +diff -c -r -N ../mcpp-2.7.2/src/system.c ./src/system.c +*** ../mcpp-2.7.2/src/system.c	2008-11-26 06:23:51.000000000 -0330 +--- ./src/system.c	2009-12-17 20:42:42.000000000 -0330 +*************** +*** 3858,3863 **** +--- 3858,3866 ---- +  } +  #endif +   ++ FILEINFO*       sh_file; ++ int             sh_line; ++  +  void    sharp( +      FILEINFO *  sharp_file, +      int         flag        /* Flag to append to the line for GCC   */ +*************** +*** 3868,3875 **** +   * else (i.e. 'sharp_file' is NULL) 'infile'. +   */ +  { +-     static FILEINFO *   sh_file; +-     static int  sh_line; +      FILEINFO *  file; +      int         line; +   +--- 3871,3876 ---- diff --git a/abs/extra/mcpp/namlen.patch b/abs/extra/mcpp/namlen.patch new file mode 100644 index 0000000..6af7418 --- /dev/null +++ b/abs/extra/mcpp/namlen.patch @@ -0,0 +1,11 @@ +--- mcpp-2.7.2/src/mbchar.c	2008-03-08 13:06:13.000000000 +0000 ++++ mcpp-2.7.2/src/mbchar.c	2009-03-08 13:14:17.000000000 +0000 +@@ -345,7 +345,7 @@ + static size_t   mb_read_utf8( int c1, char ** in_pp, char ** out_pp); +                 /* For UTF8 mbchar encoding         */ +  +-#define NAMLEN          20 ++#define NAMLEN          40 + #define UPPER           1               /* To upper */ + #define LOWER           0               /* To lower */ +  | 
