summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner Schweer <ws.seh.de>2006-06-28 10:41:13 +0000
committerWerner Schweer <ws.seh.de>2006-06-28 10:41:13 +0000
commit277f8057e6b44fcae55aba7efc9a63d7d8087c24 (patch)
treec711f4790c10c91eba45df952f42401b1f8b2d8f
parent90f0715febd8673084eb1d3d86a91e2e1487b1bb (diff)
build system & some doku updates
-rwxr-xr-xMakefile32
-rw-r--r--muse/CMakeLists.txt15
-rw-r--r--muse/ChangeLog3
-rw-r--r--muse/README71
-rw-r--r--muse/SECURITY13
-rw-r--r--muse/TODO13
6 files changed, 124 insertions, 23 deletions
diff --git a/Makefile b/Makefile
index 5366d696..091327d7 100755
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,22 @@
+#=============================================================================
+# MusE
+# Linux Music Editor
+# $Id:$
#
+# Copyright (C) 2002-2006 by Werner Schweer and others
#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2.
#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+#=============================================================================
default:
if test ! -d build; \
@@ -10,8 +25,6 @@ default:
mkdir build; \
echo "+entering build directory"; \
cd build; \
- # HACK: \
- cp ../muse/all.h . ; \
echo "+calling cmake" ; \
cmake ../muse ; \
else \
@@ -22,13 +35,28 @@ default:
make -f Makefile
+#
+# clean out of source build
+#
+
clean:
-rm -rf build
+#
+# create source distribution
+#
+
dist:
cd build; make package_source
+ mv build/muse-*.tar.gz .
+
+#
+# this creates a shell archive / installer for
+# MusE binary
+#
package:
cd build; make package
+ mv build/muse-*.sh .
diff --git a/muse/CMakeLists.txt b/muse/CMakeLists.txt
index 2843094e..2a254007 100644
--- a/muse/CMakeLists.txt
+++ b/muse/CMakeLists.txt
@@ -180,6 +180,13 @@ configure_file (
${PROJECT_BINARY_DIR}/config.h
)
+add_custom_target(all.h
+ ALL
+ cp ${PROJECT_SOURCE_DIR}/all.h ${PROJECT_BINARY_DIR}/all.h
+ DEPENDS ${PROJECT_SOURCE_DIR}/all.h
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+ )
+
add_custom_target(all-pic.h
ALL
cp ${PROJECT_SOURCE_DIR}/all.h ${PROJECT_BINARY_DIR}/all-pic.h
@@ -218,8 +225,8 @@ add_custom_target(all-pic.h.pch
-I${QT_QTCORE_INCLUDE_DIR}
-I${QT_QTGUI_INCLUDE_DIR}
-o ${PROJECT_BINARY_DIR}/all-pic.h.pch
- ${PROJECT_BINARY_DIR}/all-pic.h
- DEPENDS ${PROJECT_BINARY_DIR}/all-pic.h
+ ${PROJECT_SOURCE_DIR}/all.h
+ DEPENDS ${PROJECT_SOURCE_DIR}/all.h
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
@@ -234,8 +241,8 @@ add_custom_target(all-pic-debug.h.pch
-I${QT_QTCORE_INCLUDE_DIR}
-I${QT_QTGUI_INCLUDE_DIR}
-o ${PROJECT_BINARY_DIR}/all-pic-debug.h.pch
- ${PROJECT_BINARY_DIR}/all-pic-debug.h
- DEPENDS ${PROJECT_BINARY_DIR}/all-pic-debug.h
+ ${PROJECT_SOURCE_DIR}/all.h
+ DEPENDS ${PROJECT_SOURCE_DIR}/all.h
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
diff --git a/muse/ChangeLog b/muse/ChangeLog
index d1f6b7c4..db5c4bf8 100644
--- a/muse/ChangeLog
+++ b/muse/ChangeLog
@@ -1,3 +1,6 @@
+28.6. (ws)
+ * updated README
+ * small fixes to build system
23.6. (ws)
* new project property dialog to edit the project comment
22.6. (ws)
diff --git a/muse/README b/muse/README
index 3117b592..8eff931b 100644
--- a/muse/README
+++ b/muse/README
@@ -1,4 +1,3 @@
-
====================================================================
MusE --- Linux Music Editor
====================================================================
@@ -27,7 +26,6 @@ details.
- QT: Qt 4.1.0 or above
ftp://ftp.trolltech.com/qt/source
MusE does _not_ compile with older versions
- MAKE SURE YOU SET YOUR 'QTDIR' ENVIRONMENT VARIABLE
- ALSA 1.0 or newer
http://www.alsa-project.org/
@@ -37,31 +35,74 @@ details.
- libsndfile >= 1.0.1
http://www.zip.com.au/~erikd/libsndfile/
+ - libsamplerate
+
- JACK
http://jackit.sourceforge.net/download/
+ Optional:
+
- fluidsynth-1.0.3 (formerly known as iiwusynth) from
http://savannah.nongnu.org/download/fluid
+ - DSSI
=============================
Compiling:
=============================
- download source from http://lmuse.sourceforge.net/
- - uncompress source:
- bunzip2 muse-x.x.x.tar.bz2
- - untar source:
- tar xvof muse-x.x.x.tar </code>
- or if you have a recent tar, you can combine both steps:
- tar xvofj muse-x.x.x.tar.bz2
-
- - enter dirctory muse-x.x.x:
- run "gen" script
-
- - enter the just build "build" directory and as root run:
- make install
- to install MusE
+
+ - unpack source:
+ tar xvofz muse-xyz.tar.gz </code>
+
+ - to compile MusE, run the following commands:
+ mkdir muse # create build directory
+ cd muse # enter build directory
+ cmake ../muse-xyz # create make system
+ make # compile muse
+
+ - install MusE:
+ run "make install"
+
+ =============================
+ running MusE
+ =============================
+
+ MusE is a realtime program which requires special rights to
+ work poperly.
+ Recommended setup:
+
+ - check if you are running a sufficiently new linux kernel > 2.6.x
+
+ - create an "audio" group if it does not already exists
+ and put yourself into this group
+
+ - make sure you can acces the realtime clock (RTC)
+ chmod 660 /dev/rtc
+ chgrp audio /dev/rtc
+
+ - make sure MusE cat set the rtc clock:
+ echo 8192 > /proc/sys/dev/rtc/max-user-freq
+ inspect with:
+ cat /proc/sys/dev/rtc/max-user-freq
+
+ - for MusE to gain RT priviledges load the "realtime-lsm"
+ modul; the modul should be configured to give all "audio"
+ group members realtime priviledges
+
+ - make sure the alsa sequencer modul is loaded:
+ /sbin/modprobe snd-seq
+ (same distros (ubuntu) do not load it by default :-( )
+
+ - start qjackctl
+ - start JACK with qjackctl
+
+ - start MusE
+
+ (JACK and all its clients (qjackctl & MusE) must run with the
+ same user id)
+
=============================
known bugs
diff --git a/muse/SECURITY b/muse/SECURITY
index d09e03d9..9daf0171 100644
--- a/muse/SECURITY
+++ b/muse/SECURITY
@@ -1,3 +1,16 @@
+NOTE:
+The following information is outdated. There are now other mechanisms
+available to give audio programs the necessary priviledges:
+
+ realtime-lsm kernel modul
+ or the upcoming
+ set_rtlimits
+
+The advice is to use one of this methods and _never_ run any audio program
+with root priviledges.
+
+
+
MusE Security Information
=========================
diff --git a/muse/TODO b/muse/TODO
index d4979151..bb37cf1b 100644
--- a/muse/TODO
+++ b/muse/TODO
@@ -1,9 +1,12 @@
-----------------------------TODO-------------------------------------------
-(10.5.2006)
+ * - done
+(28.6.2006)
+----------------------------------------------------------------------------
+
- check for samplerate when loading project
* compute song len in seconds when saving project
* save project creation date/time in project
- - create dialog to edit project comment
+ * create dialog to edit project comment
BUGS
- updating the gui during midi recording is too slow;
@@ -14,6 +17,12 @@ BUGS
- Do not allow switch track recording on/off during recording
+ - audio prefetching is not stable
+
+ - looping does not work sample accurate due to jack transport
+ limitations; looping should be implemented internally to work
+ around this
+
FEATURES
- wave editor is completely broken