Here is a little Makefile i wrote really quickly to build the basic libs
from the help page
http://wiki.enlightenment.org/index.php/E17_User_Guide/Installing_Using_CVS
Pretty simple except for the chain rule bit. It would be nice to have
something like this in the trunk for the n00b to use when building e17.
Put it anywhere you like, even /tmp and edit the SRCDIR path in it, and
just hit "make" and you should have a nice build.
thanks.
V.
# Author- Vikram Ambrose
# Date - 9/8/2008
# Installation Prefix
PREFIX = /opt/e17
LIBDIR = $(PREFIX)/lib64
INCLUDEDIR = $(PREFIX)/include
# Top level source directory (ie, SRCDIR/libs/eet etc..)
SRCDIR = /home/vikky/Programs/e17
# Folder to build in
BUILDDIR = $(SRCDIR)/build
# Folder to store timestamps
STAMPDIR = $(BUILDDIR)/stamps
# Number of make jobs
JOBS = 1
# Method of creating time stamp
STAMP = echo `date` >
# Print on the screen
PRINT = echo -n -e
# Environment variables for ./configure
CONFIG_VARS = PKG_CONFIG_PATH=$(LIBDIR)/pkgconfig
# Environemnt variables for ./autogen.sh
AUTOGEN_VARS = NOCONFIGURE=y
# Build Log
#LOG = &> /dev/null
all: $(STAMPDIR)/built_all setup_env
@$(PRINT) "ALl Done\n"
$(STAMPDIR)/built_all: setup_env eet evas ecore embryo efreet edje e_dbus
@$(STAMP) $@
# Run only once to create folders and other stuff if necessary
$(STAMPDIR)/setup :
@$(PRINT) "Creating build folders\n"
@mkdir $(STAMPDIR)
@$(STAMP) $@
# Run at each package rule
setup_env : $(STAMPDIR)/setup
@$(PRINT) "Setting up Environment\n"
# Used to run ./configure
$(STAMPDIR)/%.conf : $(STAMPDIR)/%.preconf
@$(PRINT) "Configuring $(basename $(notdir $@))\n"
@cd $(BUILDDIR)/$(basename $(notdir $@)) \
&& $(CONFIG_VARS) $(SRCDIR)/libs/$(basename $(notdir
$@))/configure \
--prefix=$(PREFIX) \
--libdir=$(LIBDIR) \
$(LOG)
@$(STAMP) $@
# Actual compile rule
$(STAMPDIR)/%.compile : $(STAMPDIR)/%.conf
@$(PRINT) "Compiling $(basename $(notdir $@))\n"
@time { make -C $(BUILDDIR)/$(basename $(notdir $@)) -j $(JOBS) $(LOG)
; }
@$(STAMP) $@
# Install rule
$(STAMPDIR)/%.install : $(STAMPDIR)/%.compile
@$(PRINT) "Installing $(basename $(notdir $@))\n"
@time { make -C $(BUILDDIR)/$(basename $(notdir $@)) install $(LOG) ; }
@$(STAMP) $@
# sh autogen.sh rule
$(STAMPDIR)/%.preconf : $(SRCDIR)/libs/%/autogen.sh $(STAMPDIR)/setup
@$(PRINT) "Preconfiguring $(basename $(notdir $@))\n"
@cd $(SRCDIR)/libs/$(basename $(notdir $@)) \
&& $(AUTOGEN_VARS) ./autogen.sh $(LOG)
@mkdir $(BUILDDIR)/$(basename $(notdir $@))
@$(STAMP) $@
# Listed explicitly to prevent Make from deleteing intermediataries from Chain
Rule
eet: $(STAMPDIR)/eet.install \
$(STAMPDIR)/eet.compile \
$(STAMPDIR)/eet.conf \
$(STAMPDIR)/eet.preconf
evas: $(STAMPDIR)/evas.install \
$(STAMPDIR)/evas.compile \
$(STAMPDIR)/evas.conf \
$(STAMPDIR)/evas.preconf \
eet
ecore: $(STAMPDIR)/ecore.install \
$(STAMPDIR)/ecore.compile \
$(STAMPDIR)/ecore.conf \
$(STAMPDIR)/ecore.preconf \
evas
embryo: $(STAMPDIR)/embryo.install \
$(STAMPDIR)/embryo.compile \
$(STAMPDIR)/embryo.conf \
$(STAMPDIR)/embryo.preconf \
efreet
efreet: $(STAMPDIR)/efreet.install \
$(STAMPDIR)/efreet.compile \
$(STAMPDIR)/efreet.conf \
$(STAMPDIR)/efreet.preconf \
ecore
edje: $(STAMPDIR)/edje.install \
$(STAMPDIR)/edje.compile \
$(STAMPDIR)/edje.conf \
$(STAMPDIR)/edje.preconf \
embryo evas
e_dbus: $(STAMPDIR)/e_dbus.install \
$(STAMPDIR)/e_dbus.compile \
$(STAMPDIR)/e_dbus.conf \
$(STAMPDIR)/e_dbus.preconf \
edje
.PHONY: eet evas ecore embryo edje e_dbus setup_env all
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel