1. 09 Jul, 2012 1 commit
    • Juanma Barranquero's avatar
      lib/makefile.w32-in: Rework dependencies. · 52331d2c
      Juanma Barranquero authored
      (GNU_LIB, NT_INC, C_CTYPE_H, MS_W32_H, CONFIG_H, FILEMODE_H)
      (FTOASTR_H, FTOASTR_C, GETOPT_INT_H, MD5_H, SHA1_H, SHA256_H)
      (U64_H, SHA512_H): New macros.
      (SRC): Redefine to point to src/, not current directory.
      ($(BLD)/c-ctype.$(O), $(BLD)/c-strcasecmp.$(O))
      ($(BLD)/c-strncasecmp.$(O), $(BLD)/dtoastr.$(O))
      ($(BLD)/dtotimespec.$(O), $(BLD)/getopt.$(O), $(BLD)/getopt1.$(O))
      ($(BLD)/gettime.$(O), $(BLD)/strftime.$(O), $(BLD)/time_r.$(O))
      ($(BLD)/timespec-add.$(O), $(BLD)/timespec-sub.$(O), $(BLD)/md5.$(O))
      ($(BLD)/sha1.$(O), $(BLD)/sha256.$(O), $(BLD)/sha512.$(O))
      ($(BLD)/filemode.$(O)): Update dependencies.
      52331d2c
  2. 07 Jul, 2012 1 commit
    • Juanma Barranquero's avatar
      Update Windows port to gnulib changes in 2012-07-06T21:07:46Z!eggert@cs.ucla.edu. · 07adc2c6
      Juanma Barranquero authored
      * lib-src/makefile.w32-in ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)):
      Update dependencies.
      
      * lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/c-ctype.$(O),
      $(BLD)/c-strcasecmp.$(O) and $(BLD)/c-strncasecmp.$(O).
      ($(BLD)/c-ctype.$(O), $(BLD)/c-strcasecmp.$(O))
      ($(BLD)/c-strncasecmp.$(O)): New dependencies.
      
      * src/makefile.w32-in (DISPEXTERN_H, $(BLD)/regex.$(O)):
      Update dependencies.
      
      * src/s/ms-w32.h [_MSC_VER]: Remove strcasecmp, strncasecmp.
      07adc2c6
  3. 26 Jun, 2012 2 commits
    • Eli Zaretskii's avatar
      Fix parallel bootstrap on MS-Windows in lib/ and lisp/. · cc06e7e7
      Eli Zaretskii authored
       lib/makefile.w32-in ($(GNULIBOBJS)): Depend on stamp_BLD.  This
       replaces separate dependency for each object file, which required
       the same object file to be mentioned twice, causing failures in
       parallel builds.
       lisp/makefile.w32-in (compile, compile-always): Depend on
       update-subdirs, not on subdirs.el.  Otherwise, several different
       sub-targets of 'bootstrap' running in parallel could
       simultaneously write to subdirs.el, producing a garbled file.
      cc06e7e7
    • Paul Eggert's avatar
      cf38a720
  4. 24 Jun, 2012 1 commit
    • Eli Zaretskii's avatar
      Improve port of struct timespec to MS-Windows. · 696056c2
      Eli Zaretskii authored
       lib/makefile.w32-in ($(BLD)/dtotimespec.$(O)):
       ($(BLD)/timespec-add.$(O)):
       ($(BLD)/timespec-sub.$(O)): Don't depend on
       $(EMACS_ROOT)/nt/inc/sys/time.h.
       lib/stat-time.h:
       lib/timespec.h:
       lib/utimens.h: Revert last change.
       src/makefile.w32-in (TIMESPEC_H): Remove nt/inc/sys/time.h.
       (SYSTIME_H): Add nt/inc/sys/time.h.
       src/systime.h [WINDOWSNT]: Include sys/time.h.
       src/s/ms-w32.h (struct timespec): Definition moved from
       nt/inc/sys/time.h.  Suggested by Paul Eggert <eggert@cs.ucla.edu>.
       nt/inc/sys/time.h (struct timespec): Don't define it here, it is
       now defined in src/s/ms-w32.h.
      
      Fixes: debbugs:9000
      696056c2
  5. 23 Jun, 2012 1 commit
    • Eli Zaretskii's avatar
      Fix the MS-Windows build broken by 2012-06-22T21:17:42Z!eggert@cs.ucla.edu. · 388cdec0
      Eli Zaretskii authored
       nt/inc/sys/time.h (struct timespec): Define.
       lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/dtotimespec.$(O),
       $(BLD)/gettime.$(O), $(BLD)/timespec-add.$(O), and
       $(BLD)/timespec-sub.$(O).
       ($(BLD)/dtotimespec.$(O)):
       ($(BLD)/gettime.$(O)):
       ($(BLD)/timespec-add.$(O)):
       ($(BLD)/timespec-sub.$(O)): New dependencies.
       lib/stat-time.h:
       lib/timespec.h:
       lib/utimens.h: Include sys/time.h
       src/w32.c (fdutimens): New function.
       src/w32proc.c (sys_select): Adapt to change in the EMACS_TIME type.
       src/s/ms-w32.h (pselect): Redirect to sys_select.
       src/sysselect.h [WINDOWSNT]: Don't include sys/select.h.
      
      Fixes: debbugs:9000
      388cdec0
  6. 27 May, 2012 1 commit
    • Eli Zaretskii's avatar
      Fix the MS-Windows build broken by 1995-02-25T20:57:45Z!rms@gnu.org. · cd376509
      Eli Zaretskii authored
       lib/makefile.w32-in ($(BLD)/md5.$(O)): 
       ($(BLD)/sha1.$(O)): 
       ($(BLD)/sha256.$(O)): 
       ($(BLD)/sha512.$(O)): Depend on $(EMACS_ROOT)/nt/inc/stdalign.h.
       Suggested by Christoph Scholtes <cschol2112@googlemail.com>.
       lib/getopt_.h: Regenerate.
       nt/inc/stdalign.h: New file.
      
      Fixes: debbugs:11527
      cd376509
  7. 22 May, 2012 1 commit
    • Paul Eggert's avatar
      Remove src/m/*. · 34374650
      Paul Eggert authored
      * configure.in: Remove all mention of src/m/*.
      (machine, machfile, M_FILE, config_machfile, and_machfile): Remove.
      All uses removed.
      (BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
      (BITS_PER_LONG_LONG): Move to src/lisp.h.
      * lib/makefile.w32-in: Remove dependencies on
      $(EMACS_ROOT)/src/m/intel386.h.
      * make-dist: Don't make links to src/m.
      * admin/CPP-DEFINES: Do not mention src/m/*.h.
      (BITS_PER_EMACS_INT, BITS_PER_LONG, BITS_PER_CHAR)
      (BITS_PER_SHORT, BITS_PER_INT): Remove.
      * admin/MAINTAINERS: Remove src/m/.
      * lib-src/makefile.w32-in: Remove dependencies on
      $(EMACS_ROOT)/src/m/intel386.h.
      * msdos/mainmake.v2 (TAGS tags): Don't look at $(CURDIR)/src/m/intel386.h.
      * nt/config.nt: Do not include "m/intel386.h"; file was removed.
      (BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG):
      Move to src/lisp.h.
      (EMACS_INT_MAX): New macro.
      This directory predates autoconf and is no longer needed nowadays.
      Move its few remaining bits of functionality to where they're needed.
      * src/m/README, src/m/alpha.h, src/m/amdx86-64.h, src/m/ia64.h, src/m/ibmrs6000.h:
      * src/m/ibms390x.h, src/m/intel386.h, src/m/m68k.h, src/m/macppc.h:
      * src/m/sparc.h, src/m/template.h: Remove.
      * src/Makefile.in (M_FILE): Remove.  All uses removed.
      * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS):
      * src/lisp.h (USE_LSB_TAG):
      * src/mem-limits.h (EXCEEDS_LISP_PTR):
      Use VAL_MAX, not VALBITS, in #if.
      * src/lisp.h (EMACS_INT_MAX): New macro, useful in #if.
      (EMACS_UINT): Define unconditionally now.
      (BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
      (BITS_PER_EMACS_INT): New constants, replacing
      what used to be in config.h, but not useful in #if.
      (GCTYPEBITS, VALBITS): Define unconditionally, since m/* files don't
      define them any more.
      (VAL_MAX): New macro.
      (VALMASK): Use it.
      * src/puresize.h (PURESIZE_RATIO): Use EMACS_INT_MAX, not
      BITS_PER_EMACS_INT, in #if.
      * src/s/aix4-2.h (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGPTY)
      (BROKEN_SIGPOLL): Move here from m/ibmrs6000.h, which was removed.
      * src/s/gnu-linux.h (ULIMIT_BREAK_VALUE) [__i386__]:
      * src/s/ms-w32.h (DATA_START):
      Move here from removed file m/intel386.h.
      * src/s/gnu.h (NLIST_STRUCT): Remove undef; 'configure' does this.
      * src/s/irix6-5.h (_LP64): Remove; lisp.h no longer needs this.
      34374650
  8. 07 Apr, 2012 1 commit
    • Eli Zaretskii's avatar
      Fix parallel build and bootstrap on MS-Windows. · d67a9a85
      Eli Zaretskii authored
       nt/makefile.w32-in: (all): Don't depend on stamp_BLD and on maybe-bootstrap.
       (all-other-dirs-$(MAKETYPE)): Depend on maybe-bootstrap.
       (bootstrap-gmake): Invoke the "clean" and build targets in 2
       separate commands, so they run in that order even under "make -j".
       lib/makefile.w32-in (gnulib, all): Don't depend on stamp_BLD.
       lib-src/makefile.w32-in (ALL): Now the list of executables, not of phony
       targets.
       (.PHONY): Only make-docfile is its prerequisite now.
       (make-docfile): Don't depend on stamp_BLD.  Add a comment about
       the need in this target.
       (ctags, etags, ebrowse, hexl, movemail, emacsclient)
       (test-distrib): Phony targets removed.
       ($(BLD)/test-distrib.exe): Run test-distrib as part of the recipe.
       (all): Don't depend on stamp_BLD.
      d67a9a85
  9. 05 Feb, 2012 1 commit
  10. 30 Jan, 2012 1 commit
  11. 05 Nov, 2011 1 commit
    • Eli Zaretskii's avatar
      Support MSVC build with newer versions of Visual Studio. · a6fc3b5c
      Eli Zaretskii authored
      Small portions of the changes by Fabrice Popineau <fabrice.popineau@supelec.fr>.
      
       src/makefile.w32-in (TAGS-gmake): Don't use $(patsubst ...), as
       Nmake barfs on that.  Use $(OBJ*_c) variables instead, defined on
       nt/gmake.defs.
       src/lisp.h (ENUM_BF): New macro, for enumerated types in bitfields,
       which are not supported by MSVC.
       (Lisp_Symbol, Lisp_Misc_Any, Lisp_Marker, Lisp_Misc_Overlay)
       (Lisp_Save_Value, Lisp_Free): Use ENUM_BF for enumerated types in
       bitfields.
       (Lisp_Object) [USE_LISP_UNION_TYPE]: Use ENUM_BF for enumerated
       types in bitfields.
       (DEFUN) [_MSC_VER]: Define in a different way for MSVC.
       src/w32fns.c [_MSC_VER]: DECLARE_HANDLE for any MSVC version.
       src/w32.c: Don't include w32api.h for MSVC.
       (init_environment) [_MSC_VER]: Call sys_access, not _access.
       src/s/ms-w32.h <sigset_t, ssize_t> [_MSC_VER]: Typedefs for MSVC.
       [_MSC_VER]: Include sys/timeb.h, sys/stat.h, and signal.h.
       (fstat, stat, utime) [_MSC_VER]: Redirect to their sys_* cousins.
       (malloc, free, realloc, calloc) [_MSC_VER]: Always redirect to the
       e_* cousins.
       (alloca) [_MSC_VER]: Define to _alloca.
       src/lisp.h (DECL_ALIGN) [_MSC_VER]: Define for MSVC.
       src/regex.c <re_char> [_MSC_VER]: A separate definition for MSVC.
       nt/makefile.w32-in (clean-other-dirs-nmake)
       (distclean-other-dirs-nmake, maintainer-clean-other-dirs-nmake):
       Update for current structure of doc/ subdirectories.
       nt/gmake.defs (OBJ0_c, OBJ1_c, OBJ2_c): New variables.
       nt/INSTALL: Update for newer versions of MSVC.
       lib/makefile.w32-in (FRC): New dummy target.
       (TAGS): Depend on FRC.
      
      Fixes: debbugs:9960
      a6fc3b5c
  12. 24 Jul, 2011 1 commit
    • Paul Eggert's avatar
      Merge from gnulib, using build-aux to remove clutter. · 24e0f6b1
      Paul Eggert authored
      * m4/largefile.m4: New file, so that Emacs does not mess up when
      accessing files with large inode numbers in MacOS X 10.5 and later.
      * m4/nocrash.m4: New file, to avoid triggering background debugger
      and/or create core dumps during 'configure'.
      * build-aux/move-if-change: Renamed from move-if-change.
      * build-aux/snippet/arg-nonnull.h: Renamed from arg-nonnull.h.
      * build-aux/snippet/c++defs.h: Renamed from c++defs.h.
      * build-aux/snippet/warn-on-use.h: Renamed from warn-on-use.h.
      * build-aux/snippet/_Noreturn.h: New file, for draft C1X _Noreturn.
      * .bzrignore: The autogenerated files compile, config.guess,
      config.sub, depcomp, install-sh, and missing are now in build-aux.
      * Makefile.in (epaths-force, sync-from-gnulib):
      move-if-change is now in build-aux.
      (GNULIB_TOOL_FLAGS): Avoid threadlib; this is now a prerequisite
      of gnulib's pthread_sigmask module, but Emacs doesn't need it.
      (mkdir): install-sh is now in build-aux.
      * config.bat: c++defs.h is now in build-aux/snippets.
      * configure.in: Specify AC_CONFIG_AUX_DIR with build-aux (the
      usual parameter).
      * lib/gnulib.mk, m4/gl-comp.m4: Regenerate.
      * lib/makefile.w32-in (ARG_NONNULL_H): arg-nonnull.h moved
      to build-aux/snippet.
      * lib/pthread_sigmask.c, lib/stdlib.in.h, m4/extensions.m4:
      * m4/getopt.m4, m4/gnulib-common.m4, m4/pthread_sigmask.m4:
      Merge from gnuilib.  This fixes porting bugs on Cygwin, Irix, and
      Solaris, enables MacOS extensions, and enables nocrash during
      'configure'.
      * make-dist: Adjust to new build-aux and build-aux/snippit dirs.
      * admin/notes/copyright: The files compile, config.guess, config.sub,
      depcomp, install-sh, missing, and move-if-change are now in the
      new build-aux subdirectory.  The files arg-nonnull.h, c++defs.h,
      and warn-on-use.h are now in build-aux/snippets.  New file
      build-aux/snippets/_Noreturn.h.
      * leim/Makefile.in (install): install-sh is now in build-aux.
      * lib-src/Makefile.in ($(DESTDIR)${archlibdir}): install-sh moved
      to build-aux.
      * msdos/sedlibmk.inp (CONFIG_CLEAN_VPATH_FILES): Adjust to snippet moves
      from top level to build-aux/snippet.
      * src/Makefile.in (gl-stamp): move-if-change is now in build-aux.
      24e0f6b1
  13. 21 Jun, 2011 1 commit
  14. 29 May, 2011 1 commit
  15. 24 May, 2011 1 commit
  16. 06 Apr, 2011 2 commits
  17. 21 Feb, 2011 2 commits
    • Christoph Scholtes's avatar
      Add stdint.h for MS-Windows. · 9f8370e6
      Christoph Scholtes authored
       nt/inc/stdint.h: New file, to support compilation with tool chains
       that do not have stdint.h (e.g. MSVC).
       lib/makefile.w32-in: ($(BLD)/md5.$(O)): Added dependency on
       $(EMACS_ROOT)/nt/inc/stdint.h.
      9f8370e6
    • Eli Zaretskii's avatar
      Adapt MS-Windows build to import of filemode.c from gnulib. · 25c51af3
      Eli Zaretskii authored
       nt/inc/sys/stat.h (S_ISUID, S_ISGID, S_ISVTX, S_IRGRP, S_IROTH)
       (S_IWGRP, S_IWOTH, S_IXGRP, S_IXOTH, S_ISSOCK, S_ISLNK, S_ISCTG)
       (S_ISDOOR, S_ISMPB, S_ISMPC, S_ISNWK, S_ISPORT, S_ISWHT)
       (S_TYPEISMQ, S_TYPEISSEM, S_TYPEISSHM, S_TYPEISTMO): Define.
       (lstat): Define to stat.
       lib/makefile.w32-in ($(BLD)/filemode.$(O)): Move from
       src/makefile.w32-in and adapt.  Depend on stamp_BLD.
       (GNULIBOBJS): Add $(BLD)/filemode.$(O).
       src/makefile.w32-in ($(BLD)/filemode.$(O)): Move recipe to
       lib/makefilw.w32-in.
       ($(BLD)/dired.$(O)): Depend on $(EMACS_ROOT)/lib/filemode.h.
       (GLOBAL_SOURCES): Remove filemode.c.
       (OBJ1): Remove $(BLD)/filemode.$(O).
       lib-src/makefile.w32-in ($(BLD)/ctags.$(O), $(BLD)/emacsclient.$(O))
       ($(BLD)/etags.$(O), $(BLD)/movemail.$(O), $(BLD)/ntlib.$(O)):
       Depend on $(EMACS_ROOT)/nt/inc/sys/stat.h.
      25c51af3
  18. 20 Feb, 2011 2 commits
  19. 31 Jan, 2011 1 commit
    • Eli Zaretskii's avatar
      Fix the MS-Windows build broken by 2011-01-30T23:34:18Z!eggert@cs.ucla.edu and... · 70b0d280
      Eli Zaretskii authored
      Fix the MS-Windows build broken by 2011-01-30T23:34:18Z!eggert@cs.ucla.edu and 2011-01-31T08:15:13Z!eggert@cs.ucla.edu.
      
       lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/strftime.$(O) and
       $(BLD)/time_r.$(O).
       ($(BLD)/dtoastr.$(O)): Depend on $(EMACS_ROOT)/src/s/ms-w32.h and
       $(EMACS_ROOT)/src/m/intel386.h.
       ($(BLD)/strftime.$(O)): 
       ($(BLD)/time_r.$(O)): Define prerequisites.
       src/makefile.w32-in (OBJ2): Remove strftime.$(O).
       ($(BLD)/strftime.$(O)): Remove prerequisites.
       lib-src/makefile.w32-in (VERSION): Don't define, defined on nt/config.nt.
       (ECLIENT_CFLAGS): Remove -DVERSION.
       ($(BLD)/emacsclient.$(O)): Don't depend on makefile.w32-in.
       nt/config.nt (VERSION): Uncomment definition.
       (restrict): Define.
       nt/inc/stdbool.h: New file.
       admin/admin.el (set-version): Remove lib-src/makefile.w32-in.  Add
       nt/config.nt.
      70b0d280
  20. 29 Jan, 2011 1 commit
    • Eli Zaretskii's avatar
      Fix the MS-Windows build broken by 2011-01-17T19:01:01Z!eggert@cs.ucla.edu and... · f915f0f7
      Eli Zaretskii authored
      Fix the MS-Windows build broken by 2011-01-17T19:01:01Z!eggert@cs.ucla.edu and emacs-23/2010-05-21T19:51:48Z!acm@muc.de.
      
       lib/makefile.w32-in:
       lib/getopt_.h: New files.
       src/s/ms-w32.h (HAVE_MKTIME): Remove.
       src/makefile.w32-in (LOCAL_FLAGS): Add -I../lib.
       (GNULIB): New variable.
       (LIBS): Add $(GNULIB).
       $(TEMACS): Depend on $(GNULIB).
       <top-level>: Fix font-lock disrupted by a lone `"'.
       src/makefile.w32-in (LOCAL_FLAGS): Add -I../lib.
       (GETOPTOBJS, GETOPTDEPS): Remove targets.
       (MOVEMAILOBJS): Replace $(GETOPTOBJS) with ../lib/$(BLD)/libgnu.$(A).
       ($(BLD)/movemail.exe): Depend on ../lib/getopt.h.
       (ECLIENTOBJS, ETAGSOBJ, CTAGSOBJ, EBROWSEOBJ): Replace getopt.o
       and getopt1.o with ../lib/$(BLD)/libgnu.$(A).
       (clean): Don't remove getopt.h.
       (getopt.h, $(BLD)/getopt.$(O), $(BLD)/getopt1.$(O)): Remove targets.
       ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)): Replace getopt.h with
       $(EMACS_ROOT)/lib/getopt.h.
       nt/makefile.w32-in (all-other-dirs-nmake, all-other-dirs-gmake)
       (bootstrap-nmake, bootstrap-gmake, bootstrap-clean-nmake)
       (bootstrap-clean-gmake, clean-other-dirs-nmake)
       (clean-other-dirs-gmake, cleanall-other-dirs-nmake)
       (cleanall-other-dirs-gmake, distclean-other-dirs-nmake)
       (distclean-other-dirs-gmake, maintainer-clean-other-dirs-nmake)
       (maintainer-clean-other-dirs-gmake): Recurse into ../lib as well.
       nt/configure.bat: Create lib/makefile.
       nt/config.nt (HAVE_MKTIME, BROKEN_MKTIME): Remove.
       (HAVE_ATTRIBUTE_ALIGNED, HAVE_C99_STRTOLD, HAVE_DECL_GETENV)
       (HAVE_DECL_LOCALTIME_R, HAVE_WCHAR_T, PACKAGE, VERSION, inline)
       (_GL_UNUSED, _UNUSED_PARAMETER_): Add definitions, for gnulib.
      f915f0f7