As, maybe, you know, Cygwin has an emacs-w32 package (https://cygwin.com/packages/x86_64/emacs-w32/emacs-w32-24.5-2) which uses the Windows interface instead of an X toolkit.

I have seen that cloning https://github.com/Alexpux/MSYS2-packages/tree/master/emacs directory and adapting a bit the PKGBUILD (result attached), Emacs build, installs and runs:

  makepkg -sLf --skippgpcheck
  pacman -U emacs-w32-25.1-1-*.pkg.tar.xz
  emacs &

(it also work with rsyncing $APPDATA/.emacs.d with ~/.emacs.d)

Just the icons seems too raw but this should be the result of lacking libXpm-nox package for MSYS2,

   pacman -Ss xpm
mingw32/mingw-w64-i686-tkimg 1.4.2-3
Adds support to Tk for many other Image formats: BMP, XBM, XPM, GIF, PNG, JPEG, TIFF and postscript (mingw-64)
mingw32/mingw-w64-i686-xpm-nox 4.2.0-4
    X Pixmap library not using X (mingw-w64)
mingw64/mingw-w64-x86_64-tkimg 1.4.2-3
Adds support to Tk for many other Image formats: BMP, XBM, XPM, GIF, PNG, JPEG, TIFF and postscript (mingw-64)
mingw64/mingw-w64-x86_64-xpm-nox 4.2.0-4 [installato]
    X Pixmap library not using X (mingw-w64)


Useful would be also packages for GIF, JPEG, PNG etc...


Ciao,
 Angelo.


# Maintainer: Ricky <rickleaf...@gmail.com>
_realname="emacs"
pkgname="${_realname}-w32"
pkgver=25.1
pkgrel=1
pkgdesc="The extensible, customizable, self-documenting, real-time display 
editor (msys2)"
url="http://www.gnu.org/software/${_realname}/";
license=('GPL3')
arch=('i686' 'x86_64')
depends=('ncurses' 'zlib' 'libxml2' 'libiconv' 'crypt' 'libgnutls' 'glib2' 
'libhogweed')
groups=('editors')
makedepends=('gawk' 'libiconv-devel' 'libxml2-devel' 'libiconv-devel' 
'ncurses-devel' 'libcrypt-devel' 'libgnutls-devel')
options=('strip')
source=("http://ftp.gnu.org/gnu/${_realname}/${_realname}-${pkgver}.tar.xz"{,.sig}
        'configure.ac.diff')
sha256sums=('19f2798ee3bc26c95dca3303e7ab141e7ad65d6ea2b6945eeba4dbea7df48f33'
            'fce9c0494bec47106e6d6853e44b825e49558a8da009ec47930d7c7d6814037a'
            '0cb204f2cab4740d27a47a4adc7e4168d6034e86cd522605a85bbd03fb1db59d')

prepare() {
  cd "${_realname}-${pkgver}"
  patch --binary --forward -p0 < "${srcdir}/configure.ac.diff"
  ./autogen.sh
}

build() {
        
  cd "${srcdir}/${_realname}-${pkgver}"

  CPPFLAGS="-DNDEBUG"
  CFLAGS="-pipe -O3 -fomit-frame-pointer -funroll-loops"
  LDFLAGS="-s -Wl,-s"
  ./configure \
    --prefix=/usr \
    --build="${CHOST}" \
    --with-w32 \
    --with-sound=yes \
    --with-modules \
    --without-compress-install

  make
}

package() {
  cd "${srcdir}"/${_realname}-${pkgver}
  make DESTDIR="${pkgdir}" install
  rm -f "${pkgdir}/usr/bin/ctags.exe"
  rm -f "${pkgdir}/usr/share/man/man1/ctags.1.gz"
  rm -f "${pkgdir}/usr/share/info/info.info.gz"

  local dir="${pkgdir}/usr/share/${_realname}"
        dir="${dir}/$(ls -1 ${dir} | grep -E '([0-9]+\.[0-9]+)(\.[0-9]+)?')/src"

  mkdir -p "${dir}"
  cd "${srcdir}/${_realname}-${pkgver}/src"
  cp *.c *.h *.m "${dir}"
  
}

# TODO:
# Patch `shell-file-name' default in the C source code similarly to
# `source-directory'.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Msys2-users mailing list
Msys2-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to