emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Achim Gratz <Stromeko@nexgo.de>
To: emacs-orgmode@gnu.org
Subject: Re: patch makefile solve a couple debian build problems and a slackware build problem
Date: Sun, 10 Jul 2011 22:03:34 +0200	[thread overview]
Message-ID: <87fwmdkind.fsf@Rainer.invalid> (raw)
In-Reply-To: 87k4bqjnwu.fsf@Rainer.invalid

Achim Gratz <Stromeko@nexgo.de> writes:
> I just realize that the Makefile already uses several GNU make
> extensions.  If it's OK to use them (specifically include files and
> conditional variable assignment), that would help to restructure the
> Makefile so that it can be customized and maintained more easily.  Let
> me know if I should work on a proposal in that direction or not.

I went ahead with splitting the Makefile up, it now looks like this:

--8<---------------cut here---------------start------------->8---
#
# Master Makefile for the org-mode distribution
#
include  default.mk
-include local.mk

.DEFAULT_GOAL := help
# Describe valid make targets for org-mode.
targets help:
	@echo
	@echo "Check the settings in default.mk first. If you need to adjust them, please"
	@echo "copy default.mk to local.mk and then make your edits in local.mk."
	@echo
	@echo "Usage:"
	@echo
	@echo "make              # compile Org ELisp files"
	@echo "make clean        # clean Elisp and documentation files"
	@echo "make all          # compile Org ELisp files and documentation"
	@echo
	@echo "make doc          # make all documentation"
	@echo "make info         # make Info documentation"
	@echo "make html         # make HTML documentation"
	@echo "make pdf          # make pdf documentation"
	@echo "make card         # make refcards documentation"
	@echo
	@echo "make install      # install Org"
	@echo "make install-lisp # install Org ELisp files"
	@echo "make install-info # install Org Info file"
	@echo

include  maint.mk
include  standard.mk
include  deps.mk
-include server.mk
--8<---------------cut here---------------end--------------->8---

Calling make without a target or with a target of "help" or "targets"
will give a short overview on how to set things up and use it.

Customization is done by creating a local.mk file that overrides the
settings in default.mk.  By doing this in your local branch, you never
need to worry that some change in the main repository will overwrite
your customizations and developing on a local branch with merging should
become easier (that was my main reason to always rebase my local
branch).  Merging back into the main branch requires some care, so the
repository should probably be configured to never allow a push that has
local.mk in it.

The same thing is done for the orgmode server.mk part so that it is not
distributed with the standard orgmode repository anymore.  For
illustration I've also separated the dependencies into deps.mk so that
they may be auto-generated (in which case they'd be removed from the
repository and get their own target).  I'll probably merge maint.mk and
standard.mk again, but for now they're separated.



Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptation for Waldorf rackAttack V1.04R1:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada

  reply	other threads:[~2011-07-10 20:03 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-10  9:10 patch makefile solve a couple debian build problems and a slackware build problem Jude DaShiell
2011-07-10  9:20 ` Bastien
2011-07-10 10:07   ` Achim Gratz
2011-07-10 12:55     ` Achim Gratz
2011-07-10 20:03       ` Achim Gratz [this message]
2011-07-11 12:01         ` Bastien
2011-07-11 16:00           ` Achim Gratz
2011-07-11 18:53             ` Bastien
2011-07-13 16:08               ` Makefile restructuring Achim Gratz
2011-07-16 11:54                 ` Bastien
2011-07-16 14:56                   ` Achim Gratz
2011-07-16 21:17                     ` Achim Gratz
2011-07-17 17:30                     ` Achim Gratz
2011-12-16  9:59                     ` Achim Gratz
2011-07-19 18:28                 ` Achim Gratz
2011-10-28 10:00                   ` Achim Gratz
2011-10-29 11:22                     ` Michael Brand
2011-10-30  7:33                       ` Achim Gratz
2011-10-30 14:20                         ` Michael Brand
2011-11-06 19:06                         ` Achim Gratz
2011-11-06 19:18                           ` Jambunathan K
2011-11-06 19:38                             ` Achim Gratz
2011-11-06 20:25                               ` Jambunathan K
2011-11-08 21:35                                 ` Achim Gratz
2011-11-13 12:47                                   ` Achim Gratz
2011-11-08 18:00                   ` Achim Gratz
2011-11-08 21:23                     ` Achim Gratz
2012-04-21 10:39                       ` Bastien
2012-04-21 11:40                         ` suvayu ali
2012-04-21 13:08                         ` Samuel Wales
2012-04-21 13:26                           ` Achim Gratz
2012-04-21 13:49                             ` Samuel Wales
2012-04-21 14:34                               ` Achim Gratz
2012-04-21 15:41                                 ` Samuel Wales
2012-04-21 15:44                                   ` Achim Gratz
2012-04-22 15:22                                 ` suvayu ali
2012-04-22 15:34                                   ` Achim Gratz
2012-04-23  7:32                                     ` suvayu ali
2012-04-24  1:46                                     ` Mike McLean
2012-04-24  4:55                                       ` Achim Gratz
2012-04-21 15:29                               ` Achim Gratz
2012-04-21 15:43                                 ` Bastien
2012-04-21 18:50                                 ` Samuel Wales
2012-04-21 18:55                                   ` Achim Gratz
2012-04-21 19:12                                     ` Samuel Wales
2012-04-21 19:17                                       ` Achim Gratz
2012-04-21 20:47                                         ` Samuel Wales
2012-04-22  6:34                                           ` Achim Gratz
2012-04-22 15:31                                             ` Samuel Wales
2012-04-22 15:42                                               ` Achim Gratz
2012-04-21 13:37                           ` Jambunathan K
2012-04-21 14:25                         ` François Allisson
2012-04-21 17:57                           ` Martyn Jago
2012-04-21 18:30                             ` Achim Gratz
2012-04-21 20:45                               ` François Allisson
2012-04-21 20:57                                 ` Samuel Wales
2012-04-21 23:27                               ` Martyn Jago
2012-04-23  5:05                         ` Achim Gratz
2012-04-25 18:00                         ` Achim Gratz
2012-04-26  6:55                           ` Bastien
2011-07-11 11:58     ` patch makefile solve a couple debian build problems and a slackware build problem Bastien
2011-07-11 15:39       ` Achim Gratz
2011-07-11 18:52         ` Bastien
2011-07-10 12:21   ` Nick Dokos
2011-07-10 12:49     ` Achim Gratz
2011-07-10 14:02       ` Jude DaShiell
2011-07-11 20:01   ` [PATCH] was: " Achim Gratz
2011-07-11 21:40     ` Nick Dokos
2011-07-11 22:19       ` Bastien
2011-07-13 15:45       ` Achim Gratz
2011-07-14 15:51         ` Bastien
2011-07-11 22:19     ` Bastien

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fwmdkind.fsf@Rainer.invalid \
    --to=stromeko@nexgo.de \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).