summaryrefslogtreecommitdiff
path: root/doc/backend-writing.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/backend-writing.txt')
-rw-r--r--doc/backend-writing.txt33
1 files changed, 16 insertions, 17 deletions
diff --git a/doc/backend-writing.txt b/doc/backend-writing.txt
index 7b49041..7e34d6a 100644
--- a/doc/backend-writing.txt
+++ b/doc/backend-writing.txt
@@ -43,8 +43,8 @@ CONFIGURATION AND BUILD SYSTEM
------------------------------
Sane-backends uses the autoconf and automake tools. The configure script is
-generated from configure.in and aclocal.m4 by running "autoreconf".
-Simple checks (e.g. for headers) should be placed into configure.in while
+generated from configure.ac and aclocal.m4 by running "autoreconf".
+Simple checks (e.g. for headers) should be placed into configure.ac while
for more complex stuff acinclude.m4 is the right file. After changes in one
of these files, "autoreconf" should be called. This will then call a
chain of autotools, such as autoconf to generate configure, autoheader
@@ -77,14 +77,15 @@ sane-backends distribution.
sane-backends/
* acinclude.m4 aclocal.m4 compile config.guess config.sub configure
- configure.in depcomp install-sh ltmain.sh Makefile.am Makefile.in missing
+ configure.ac depcomp install-sh ltmain.sh Makefile.am Makefile.in missing
mkinstalldirs: Part of the build system as explained above.
* ChangeLog:
- The ChangeLog contains all the changes made since the last stable release.
- If anything is changed in git, it must be also mentioned in ChangeLog.
- It's not enough to write just a git commit message, as users won't have
- access to these messages. For more details on the format, see the SANE
- git page on the website.
+ The ChangeLog contains all the changes made since the last stable release.
+ If anything is changed in git, write a decent commit message documenting
+ your work. This commit message will be included as is in the ChangeLog
+ file for the next stable release. Users of development code should refer
+ to the `git log` output or the on-line log.
+ For more details on the format, see the SANE git page on the website.
* ChangeLog-1.0.0, ChangeLog-1.0.1 (...):
These files contain the ChangeLogs of older releases. Once a new release has
been made, the current ChangeLog renamed to ChangeLog-1.something.something
@@ -153,7 +154,7 @@ sane-backends/doc/
Contains additional information about newbackend, e.g. READMEs or TODO
files.
General files:
- * Makefile.in:
+ * Makefile.am:
"sane-newbackend.5" must be added to variable BACKEND_5MANS and
"sane-newbackend.man" to EXTRA_DIST. A backend documentation directory
(if used) must be added to the BEDOCS variable.
@@ -228,7 +229,7 @@ PROGRAMMING
* To add the backend to the existing SANE code, the following must be done at
least:
- - add the backend name to ALL_BACKENDS in configure.in (and run autoreconf)
+ - add the backend name to ALL_BACKENDS in configure.ac (and run autoreconf)
- Add new backend to BACKEND_CONFS, be_convenience_libs, be_dlopen_libs,
and define _lib${backend}_la_SOURCES and
nodist_libsane_${backend}_la_SOURCES; using an existing backend as
@@ -254,20 +255,18 @@ PROGRAMMING
* Please be courteous to programmer's with terminals that are 80
characters wide. It's not difficult to avoid long lines, so please
- do so. Note that in ANSI C you can split long strings into pieces
+ do so. Note that in standard C you can split long strings into pieces
separated by white space. For example,
"this is an awfully long string" can be written as "this is an "
"awfully long string".
-* Use only ANSI C for your backend. C99 is not supported by the compilers of
- some older platforms so please avoid using its features.
+* Use only standard C for your backend. ISO C99 support will be enabled
+ if supported by the compiler detected by configure.
* Please do not depend on compiler specific features or, if you do, make
the dependency conditional so other compilers will still be able to
compile the files. In particular:
- - do not use C++ style comments (//-line comments)
-
- do not declare dynamically sized automatic arrays; instead,
use alloca() after including "../include/lalloca.h". For example:
@@ -295,7 +294,7 @@ PROGRAMMING
compiler-dependent.
* If you use headers or libraries that may not be available on all systems,
- write a check for configure.in and include it conditionally. If your backend
+ write a check for configure.ac and include it conditionally. If your backend
depends on these libraries or headers, compile the backend only if they are
available (see pint for an example).
@@ -476,7 +475,7 @@ In sane-backends/backend/
In sane-backends/doc/
* Add an entry for the man page in sane.man
-* Add the man page file in doc/Makefile.in
+* Add the man page file in doc/Makefile.am
* Move the description file from descriptions-external/ to doc/descriptions/
* Check that the description file is correct: "cd doc; make html-pages" and
check the html pages result with a browser.