From cd9680f3f28ff52c328a5008231aad1810f084ca Mon Sep 17 00:00:00 2001 From: Greg Hendershott Date: Wed, 15 Jul 2015 08:48:48 -0400 Subject: [PATCH] Test against Emacs 24.3 and Emacs snapshot --- .travis.yml | 67 ++++++++++++++++++++++++++++++++++------------------- makefile | 10 +++++--- 2 files changed, 50 insertions(+), 27 deletions(-) diff --git a/.travis.yml b/.travis.yml index 915c16b0..6c2fdab8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,15 +1,26 @@ -language: c +language: generic env: - - RACKET_VERSION=5.3.5 - - RACKET_VERSION=5.3.6 - - RACKET_VERSION=6.0 - - RACKET_VERSION=6.0.1 - - RACKET_VERSION=6.1 - - RACKET_VERSION=6.1.1 - - RACKET_VERSION=6.2 - - RACKET_VERSION=HEAD - - RACKET_VERSION=SCOPE_SNAPSHOT + # Emacs 24.3 + - EMACS=emacs-24, RACKET_VERSION=5.3.5 + - EMACS=emacs-24, RACKET_VERSION=5.3.6 + - EMACS=emacs-24, RACKET_VERSION=6.0 + - EMACS=emacs-24, RACKET_VERSION=6.0.1 + - EMACS=emacs-24, RACKET_VERSION=6.1 + - EMACS=emacs-24, RACKET_VERSION=6.1.1 + - EMACS=emacs-24, RACKET_VERSION=6.2 + - EMACS=emacs-24, RACKET_VERSION=HEAD + - EMACS=emacs-24, RACKET_VERSION=SCOPE_SNAPSHOT + # Emacs snapshot + - EMACS=emacs-snapshot, RACKET_VERSION=5.3.5 + - EMACS=emacs-snapshot, RACKET_VERSION=5.3.6 + - EMACS=emacs-snapshot, RACKET_VERSION=6.0 + - EMACS=emacs-snapshot, RACKET_VERSION=6.0.1 + - EMACS=emacs-snapshot, RACKET_VERSION=6.1 + - EMACS=emacs-snapshot, RACKET_VERSION=6.1.1 + - EMACS=emacs-snapshot, RACKET_VERSION=6.2 + - EMACS=emacs-snapshot, RACKET_VERSION=HEAD + - EMACS=emacs-snapshot, RACKET_VERSION=SCOPE_SNAPSHOT matrix: allow_failures: @@ -18,20 +29,28 @@ matrix: fast_finish: true before_install: - ## Racket - - git clone https://github.com/greghendershott/travis-racket.git - - cat travis-racket/install-racket.sh | bash # pipe to bash not sh! - - export PATH=/usr/racket/bin:$PATH + ## Racket + - git clone https://github.com/greghendershott/travis-racket.git + - cat travis-racket/install-racket.sh | bash # pipe to bash not sh! + - export PATH=/usr/racket/bin:$PATH - ## Emacs - - sudo add-apt-repository -y ppa:cassou/emacs - - sudo apt-get update -qq - - sudo apt-get -f install - - sudo apt-get install -qq emacs24 emacs24-el + ## Emacs + - if [ "$EMACS" = 'emacs-24.3' ]; then + sudo add-apt-repository -y ppa:cassou/emacs && + sudo apt-get -qq update && + sudo apt-get -qq -f install && + sudo apt-get -qq install emacs24 && + sudo apt-get -qq install emacs24-el; + fi + - if [ "$EMACS" = 'emacs-snapshot' ]; then + sudo add-apt-repository -y ppa:ubuntu-elisp/ppa && + sudo apt-get -qq update && + sudo apt-get -qq -f install && + sudo apt-get -qq install emacs-snapshot && + sudo apt-get -qq install emacs-snapshot-el; + fi script: - - make deps - - make compile - - make test - - + - make deps EMACSBIN=$EMACS + - make compile EMACSBIN=$EMACS + - make test EMACSBIN=$EMACS diff --git a/makefile b/makefile index 8f18b26d..1cea16c6 100644 --- a/makefile +++ b/makefile @@ -1,6 +1,10 @@ -EMACS=$(shell if [ -z "`which emacs`" ]; then echo "Emacs executable not found"; exit 1; else echo emacs; fi) +ifdef @$(EMACSBIN) + EMACSBIN = @$(EMACSBIN) +else + EMACSBIN = $(shell if [ -z "`which emacs`" ]; then echo "Emacs executable not found"; exit 1; else echo emacs; fi) +endif -BATCHEMACS=${EMACS} --batch --no-site-file -q -eval '(progn (add-to-list (quote load-path) "${PWD}/") (package-initialize))' +BATCHEMACS = $(EMACSBIN) --batch --no-site-file -q -eval '(progn (add-to-list (quote load-path) "${PWD}/") (package-initialize))' BYTECOMP = $(BATCHEMACS) -eval '(progn (require (quote bytecomp)) (setq byte-compile-warnings t) (setq byte-compile-error-on-warn t))' -f batch-byte-compile @@ -38,7 +42,7 @@ compile: clean \ # deps automatically as a result of our Package-Requires in # racket-mode.el) deps: - $(BATCHEMACS) -eval '(progn (add-to-list (quote package-archives) (cons "melpa" "http://melpa.org/packages/")) (package-initialize) (package-refresh-contents) (package-install (quote dash)) (package-install (quote faceup)) (package-install (quote s)))' + $(BATCHEMACS) -eval '(progn (add-to-list (quote package-archives) (cons "melpa" "http://melpa.org/packages/")) (package-initialize) (package-refresh-contents) (package-install (quote faceup)) (package-install (quote s)))' doc: $(BATCHEMACS) -l racket-make-doc.el -f racket-make-doc/write-reference-file