Commit Graph

336 Commits

Author SHA1 Message Date
David Adam
7555772432 Makefile: check HAVE_GETTEXT in Makefile not shell
Tidy up the handling of gettext/non-gettext builds a bit
2014-11-17 17:27:25 +08:00
David Adam
33f9e071a4 Makefile: remove warning about old version of gettext
gettext introduced the Shell interpreter in 2003; I think we can assume
everyone has it.
2014-11-17 17:23:32 +08:00
David Adam
59da180b8f Makefile: install locale files to $localedir 2014-11-13 14:29:28 +08:00
Kevin Ballard
5db9548f40 Run make depend 2014-10-13 19:29:07 -07:00
Kevin Ballard
3c8b344a41 Rebuild fish.pc as appropriate
Re-running ./configure will cause fish.pc to rebuild, in case any of the
paths changed. It looks like this actually won't rebuild the rest of
fish, but figuring out how to handle that is out of scope for this
commit.

More importantly, this will rebuild fish.pc when the version string
changes.
2014-10-06 19:08:26 -07:00
Kevin Ballard
47c357a354 Tweak lexicon_filter.in for GNU sed 2014-10-01 18:19:38 -07:00
David Adam
ab5b22982f fish.pc: add pkgconfig file for fish
Assists other packages in finding the path to install completions: call
`pkg-config --variable=completionsdir fish` or so (like
bash-completion).

As discussed in #1485.
2014-10-01 22:15:24 +08:00
David Adam
5157ac30fa Create and use $DATADIR/vendor_completions.d/ for upstream completions
Closes #1485.
2014-10-01 21:28:01 +08:00
David Adam
2f71c15b93 Makefile: warn about SELinux; avoid a bashism
Closes #63.
2014-09-27 19:11:35 +08:00
Kevin Ballard
5f82f721d2 Rejigger test suite
Split test_interactive off from test_fishscript and add a new target
test_high_level that tests both.

Add some Makefile magic so the tests can be run serially without using
sub-make, which gets rid of a little noise from the make output.

Rewrite interactive tests to look better.
2014-09-23 22:39:23 -07:00
Kevin Ballard
8f8c4cdd17 Implement new read --null flag
The `--null` flag to `read` makes it split incoming lines on NUL instead
of newlines. This is intended for processing the output of a command
that uses NUL separators (such as `find -print0`).

Fixes #1694.
2014-09-21 19:27:26 -07:00
David Adam
174f5ba99a Makefile/configure: detect and use sed from configure 2014-09-18 20:29:49 +08:00
Konrad Borowski
5c25be51ea Merge pull request #1662 from MarkGriffiths/documentation-update
Documentation update: Fixes issue #1557
2014-09-12 13:36:26 +02:00
Kevin Ballard
efb1467e4e Cleanup fish tests a bit
Split `make test` into two targets `make test_low_level` and `make
test_fishscript`, primarily so fishscript tests can be rechecked quickly
after edits.

Reformat the test.fish file and update some of the code to be a little
more straightforward (e.g. `if not cmd` instead of `if cmd; else`).
2014-09-07 23:50:44 -07:00
Mark Griffiths
a04d5fd065 Makefile changes 2014-09-08 06:54:03 +01:00
Mark Griffiths
6821f5ef4a Portable Makefile fix 2014-09-04 11:34:43 +01:00
Mark Griffiths
6a57a50968 Fix comment collision in lexicon 2014-09-04 10:54:18 +01:00
Mark Griffiths
adbcecb456 Rebase documentation changes 2014-09-03 15:10:53 +01:00
Mark Griffiths
c39fe3433b Various additions and fixes 2014-09-03 14:43:27 +01:00
Mark Griffiths
98ebb21489 Consistency fixes 2014-09-03 14:43:27 +01:00
Mark Griffiths
509d152e54 Tutorial auto colouring, Man page and Make fixes
Completely fixes #1557 and the underlying Doxygen changes that caused
it. Should make fish docs simpler and more robust, more consistent and
generally prettier.

todo:
- trap unmarked text as arguments in context
- test & fix sed portability - see in particular. (so far tested on BSD
(Mac) and GNU sed).
- test Makefile changes
- last round of aesthetic changes and getting that ascii fish in there…
2014-09-03 14:43:26 +01:00
Mark Griffiths
c900f23662 Add lexicon filter to manpages.
Fixed manpage 'NAME'. Under Doxygen 1.8, the output format has
changed, so the old sed script was leaving man pages with two titles.
2014-09-03 14:43:25 +01:00
Mark Griffiths
1cd50ba572 Merged in latest changes to docs and formatting tweaks
Addresses issue #1557 as well as fixing many typos, HTML errors and
inconsistencies. Also introduces automatic syntax colouring and enables
new documentation to be written in Markdown. TODO fix Tutorial.
2014-09-03 14:43:25 +01:00
Mark Griffiths
1052eeee8c Simplify styling 2014-09-03 14:43:25 +01:00
Mark Griffiths
d282bc4625 Documentation update
Rework for Doxygen >1.8. Moved large parts of the documentation to a
simplified format, making use of Markdown enhancements and fixing bad
long options.
2014-09-03 14:43:24 +01:00
Kevin Ballard
cce4265cef Fix make test to use local functions
When running `make test` we want to use the local function definitions,
not the ones installed on the system.

The system config.fish will still insert the system definitions at the
end, but at least ours will take precedence.
2014-07-14 00:46:38 -07:00
David Adam
b884117a9e Makefile: just build key_reader with the same objs as fish 2014-07-14 09:06:40 +08:00
ridiculousfish
ee8e9c0291 Remove env_universal.h and env_universal.cpp from project 2014-06-18 10:14:35 -07:00
ridiculousfish
be3e64e5ea Remove fishd.cpp source, docs, and target from Makefile and Xcode
project
2014-06-05 11:49:05 -07:00
mehultikekar
741342ba1d Fix Makefile.in for building key_reader 2014-06-01 15:58:08 -04:00
Konrad Borowski
ef3259035d Use precompiled parse files. 2014-05-02 10:31:04 +02:00
Konrad Borowski
4226f4412b fishd requires fish_version.o. 2014-05-02 10:30:01 +02:00
Konrad Borowski
368983d8da Fix header name in fishd.cpp. 2014-05-02 10:26:22 +02:00
Konrad Borowski
f8e35de18d Shorten compilation times
Now fish shell stores version is a small file called by other files.
This means that a slight change which modifies one file won't cause
many of files to recompile.

The compilation unit is intentionally small, this is by design. The
smaller it is, the faster it will recompile, and it will be compiled
a lot.
2014-05-01 09:46:27 +02:00
David Adam
42813eeb84 configure/Makefile: remove unused $LIBS and $LDFLAGS complications 2014-03-30 13:11:41 +08:00
ridiculousfish
aabed8279e Incorporate a modified UTF8 <-> wchar_t implementation from Alexey
Vatchenko (http://www.bsdua.org/libbsdua.html) in preparation for
eliminating our dependency on iconv
2014-03-22 23:46:58 -07:00
ridiculousfish
2442ae60db Remove old fish_pager source and implementation 2014-03-15 14:00:18 -07:00
David Adam
b0716253a2 Makefile: assume UTF-8 in our codebase for translation generation 2014-03-13 21:16:35 +08:00
David Adam
eaf023b4d8 Makefile: separate messages.pot error lines 2014-03-13 21:16:35 +08:00
ridiculousfish
2d43517914 Run 'make depend' to update header dependencies 2014-01-24 18:37:04 -08:00
ridiculousfish
808bc42f2a Further work on keyboard navigating the completion list 2014-01-18 12:42:53 -08:00
David Adam
bd313b0b3d configure/Makefile: remove unused variables and unneeded declarations 2014-01-15 23:50:42 +08:00
David Adam
3106cffb65 Makefile/tests: use return values to communicate errors 2014-01-15 23:50:42 +08:00
ridiculousfish
e8d6c96c1e Merge branch 'master' into ast 2014-01-08 15:07:56 -08:00
Siteshwar Vashisht
8160c85e44 Updated makefile to install javascript files and partials 2014-01-04 10:32:33 +05:30
ridiculousfish
6536ffe178 Facilities for turning on new AST-based parser. 2013-12-26 13:24:10 -08:00
ridiculousfish
ed70195c7e Merge branch 'master' into ast
Conflicts:
	function.cpp
	parser.cpp
	parser.h
2013-12-20 17:44:37 -08:00
Konrad Borowski
602f040940 Update Free Software Foundation address.
Fixes #1184.
2013-12-13 21:51:52 +01:00
ridiculousfish
a23441109d Merge branch 'master' into ast
Conflicts:
	complete.cpp
	fish_tests.cpp
	highlight.cpp
2013-12-07 12:54:43 -08:00
David Adam
7db755dd68 Makefile.in: remove cruft 2013-12-01 18:09:50 +08:00
David Adam
2efc0bad1c add correct version number to manpage output 2013-12-01 12:37:29 +08:00
David Adam
3978de2cde autoconf build: clean up Makefile, remove fish.spec
Removes some unused variables and out-of-date references.
Wraps some tests in quotes to avoid expansion errors.
Removes the fish.spec generated file as it is out of date and is
arguably better maintained by downstream packagers.
See http://github.com/zanchey/fish-build/ for a better RPM spec file.
2013-12-01 12:37:29 +08:00
ridiculousfish
34540babdb Merge branch 'master' into ast
Conflicts:
	complete.cpp
	fish_tests.cpp
2013-11-24 23:21:00 -08:00
David Adam
8621399d78 configure/Makefile: respect $LIBS, remove some egregarious lies
- expunge LIBS_COMMON, it doesn't get used anywhere
 - don't reset LIBS to empty
 - move the gettext test as every binary depends on it
 - only include one set of libraries
2013-11-09 19:43:32 +08:00
ridiculousfish
5d84e86d89 Merge branch 'master' into ast 2013-11-06 13:14:52 -08:00
Geoff Nixon
3c65cd41a5 Link with $CXXFLAGS; disable GCC-specific autoconf check (squash fixes). 2013-10-29 10:39:12 +08:00
David Adam
9a36435016 use docdir from configure in setting __fish_help_dir
Closes #1065
2013-10-29 00:01:21 +08:00
David Adam
edc4614e63 add completions for source and document the move away from '.'
Closes: #310
2013-10-28 23:33:24 +08:00
ridiculousfish
a51bd03a5c Remove parse_exec stuff 2013-10-08 18:48:01 -07:00
ridiculousfish
dd91779442 Merge branch 'master' into ast_no_templates
Conflicts:
	configure.ac
	exec.cpp
2013-10-06 13:08:57 -07:00
ridiculousfish
ad5ae9ba3b New documentation UI, including tutorial. 2013-10-05 00:37:44 -07:00
ridiculousfish
084e435883 Strip out git commit numbers from doxygen documentation 2013-09-30 16:03:34 -07:00
David Adam (zanchey)
16ba544edd docs: don't remove/rebuild share/man if we don't have doxygen 2013-09-02 13:07:31 +08:00
Konrad Borowski
07c48590c0 Be quiet about "if" conditional. 2013-08-13 17:13:18 +03:00
Konrad Borowski
4388b73077 Don't mention chsh if it doesn't exist.
This is case in Cygwin, which doesn't have /etc/shells ans chsh.
2013-08-13 17:07:24 +03:00
David Adam (zanchey)
b1d8492c3f Makefile.in: don't build dist stuff from Makefile, use build_tools 2013-08-11 23:13:38 +08:00
David Adam (zanchey)
2a06c72113 Generate version numbers dynamically
This commit hooks the Makefile up to generate a FISH_BUILD_VERSION
symbol and kills off PACKAGE_VERSION in .cpp files.

It also modifies the tarball generation script to add the necessary
version file for releases.
2013-08-11 23:13:38 +08:00
ridiculousfish
6a6593335d Teach fish_tests about new parsing files in Makefile 2013-08-08 15:06:32 -07:00
ridiculousfish
70c6ca76cb Merge branch 'master' into ast 2013-06-23 11:51:40 -07:00
David Adam
93278dc7e3 docs: configure/Makefile changes to require at least Doxygen 1.5 2013-06-19 23:59:13 +08:00
ridiculousfish
048f08080d Rename expression.h to parse_tree.h and parse_exec.h 2013-06-09 14:21:24 -07:00
ridiculousfish
f3e5262dc0 Parser limps into existence 2013-06-08 19:20:26 -07:00
ridiculousfish
956c94f30a Teach the Makefile to only instruct the user to edit /etc/shells if it needs to be edited 2013-04-27 16:36:35 -07:00
Brent Sanders
1ef8206db1 Changed paths.bin to respect BINDIR
The compiled-in path to bin dir was not correct; it made the
common assumption that `$(prefix)` == `$(prefix)/bin` which is
usually true, but not in all cases.

1. [machine specific files](http://www.gnu.org/prep/standards/html_node/Directory-Variables.html#index-exec_005fprefix)
   should use `$(exec_prefix)` (`@exec_prefix@` in Makefile.in)
   instead of the usual `$(prefix)`.

2. [executable programs](http://www.gnu.org/prep/standards/html_node/Directory-Variables.html#index-bindir)
   should use the more-specific `$(bindir)` (`@bindir@` in Makefile.in)
   instead of assuming `$(exec_prefix)/bin` as this allows the
   executable install location to be changed with the
   `--bindir=_foo_` option to `./configure`.

Fortunately, the makefile is mostly correct and *installs* the
executable in the correct location. The problem shows up later
such as during tab-completion, when fish_pager is run - the
compiled-in path it uses was the incorrect `$(prefix)/bin`
resulting in an "Unknown command" error, which only required
this small fix.
2013-04-20 13:18:51 -07:00
ridiculousfish
3c116cd077 Change Makefile to not delete legacy binaries, but instead just notify the user about them. Change Makefile to only look for legacy binaries in $PREFIX instead of using which.
https://github.com/fish-shell/fish-shell/pull/655
2013-04-12 13:49:08 -07:00
ridiculousfish
3a2c3c2288 Remove some GNU-makeisms from the Makefile to try to get us to build with BSD make. Not quite there yet. 2013-03-31 19:08:18 -07:00
ridiculousfish
9762a8ca1e Remove xsel from the build
https://github.com/fish-shell/fish-shell/issues/633
2013-03-30 00:13:44 -07:00
Siteshwar Vashisht
d9c9760aac Initial version of printf builtin 2013-03-02 20:54:12 +05:30
ridiculousfish
635c87d629 Teach fish how to clean up installed versions of set_color 2013-02-15 15:38:08 -08:00
ridiculousfish
05125341f1 bulitin_set_color.cpp -> builtin_set_color.cpp 2013-02-14 16:56:10 -08:00
ridiculousfish
12332328c1 Remove set_color from Makefile. Fix issue where builtin_set_color would mix output modes up 2013-02-14 16:46:54 -08:00
ridiculousfish
e1190eb1f3 Remove seq.in, in favor of the new function. Remove seq detection from configure.ac. Teach the Makefile how to remove old installed seqs. 2013-01-12 15:18:19 -08:00
ridiculousfish
b8135574c3 Pass -f to rm share/man/man1 to avoid a benign error message 2013-01-06 14:03:29 -08:00
ridiculousfish
9f33050a32 Change build_documentation to take its paths as arguments, and the Makefile.in to pass them 2013-01-03 15:17:48 -08:00
ridiculousfish
f73caeb6a3 Make the Makefile mv man pages instead of cp them from help_doc, because help_doc is about to be deleted 2013-01-03 10:58:08 -08:00
ridiculousfish
15da4aaec7 Make share/man/man1 manpages get built again
Addresses https://github.com/fish-shell/fish-shell/issues/491
2013-01-03 10:50:19 -08:00
ridiculousfish
1bbac9e5ce Make the Makefile use the new build_documentation.sh script (gulp) 2012-12-27 20:33:13 -08:00
ridiculousfish
489366290a Re-point some URLs at the fish homepage fishshell.com 2012-12-27 02:17:14 -08:00
ridiculousfish
fed352653d Re-teach Makefile.in how to generate proper version numbers in man pages 2012-12-27 00:38:29 -08:00
ridiculousfish
a697b2b60e Made autoconf stop generating Doxyfile.help in preparation for Xcode documentation build phase 2012-12-26 23:48:11 -08:00
David Adam (zanchey)
d0dabb0ff6 documentation TOC: remove duplicate name attributes, use id attribute instead 2012-12-26 21:10:29 -08:00
ridiculousfish
ccb157c7a3 Remove tokenizer_test target and codeT 2012-12-11 13:22:13 -08:00
lledey
8d73f2af34 Fix compilation with Python dependencies suppression.
Signed-off-by: lledey <lledey@gmail.com>
2012-12-09 07:48:08 +01:00
ridiculousfish
6a8219a02e Remove Python dependency from Makefile and Xcode build
https://github.com/fish-shell/fish-shell/issues/429
2012-12-08 21:41:38 -08:00
ridiculousfish
f599239fd4 Added xcodebuild target in Makefile 2012-12-01 20:05:35 -08:00
ridiculousfish
e73be48d96 Escape arguments to certain shell invocations in Makefile
https://github.com/fish-shell/fish-shell/issues/387
2012-11-21 13:42:30 -08:00
Siteshwar Vashisht
12f3f5dcbb Print autocompletion description after installing
Print autocompletion shortcut description at end of 'make install'
2012-09-19 13:21:49 +05:30
ridiculousfish
593ab75a76 Fix to make Makefile copy sample prompts 2012-09-06 01:40:15 -07:00
ridiculousfish
69ace201f8 Fix for https://github.com/fish-shell/fish-shell/issues/79
Release tarballs with the user docs already build, removing the doxygen dependency
2012-07-09 19:41:51 -07:00
ridiculousfish
4912967eab Large set of changes related to making fish relocatable, and improving the build and install story.
- etc/config.fish and share/config.fish are now "universal" and no longer reference install paths or need to be touched by autotools. They've been removed from config.fish.in to config.fish.
- fish now attempts to determine __fish_datadir and __fish_sysconfdir relative to the path of the fish executable itself (typically by walking up one directory). This means that you can copy the directory hierarchy around and things will still work. The compiled-in paths are used as a backup.
- The fish Xcode project now can build fish natively, without needing autotools.
- Version bumped to 2.0
2012-07-08 15:20:39 -07:00