A sketch of a xorriso source standalone release generator

This commit is contained in:
Thomas Schmitt 2008-01-16 20:13:18 +00:00
parent 6186c66dc2
commit 7d627486e3
4 changed files with 398 additions and 0 deletions

76
test/configure_ac.txt Normal file
View File

@ -0,0 +1,76 @@
AC_INIT([xorriso], [0.1.0], [http://libburnia-project.org])
AC_PREREQ([2.50])
dnl AC_CONFIG_HEADER([config.h])
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE([subdir-objects])
# A dummy demanded by libburn sources, but unused by xorriso
BURN_MAJOR_VERSION=0
BURN_MINOR_VERSION=0
BURN_MICRO_VERSION=0
AC_SUBST(BURN_MAJOR_VERSION)
AC_SUBST(BURN_MINOR_VERSION)
AC_SUBST(BURN_MICRO_VERSION)
AC_PREFIX_DEFAULT([/usr/local])
test "$prefix" = "NONE" && prefix=$ac_default_prefix
AM_MAINTAINER_MODE
AM_PROG_CC_C_O
AC_C_CONST
AC_C_INLINE
AC_C_BIGENDIAN
dnl Large file support
AC_SYS_LARGEFILE
AC_FUNC_FSEEKO
AC_CHECK_FUNC([fseeko])
if test ! $ac_cv_func_fseeko; then
AC_ERROR([Libburn requires largefile support.])
fi
AC_PROG_LIBTOOL
AC_SUBST(LIBTOOL_DEPS)
LIBTOOL="$LIBTOOL --silent"
AC_PROG_INSTALL
AC_CHECK_HEADERS()
THREAD_LIBS=-lpthread
AC_SUBST(THREAD_LIBS)
TARGET_SHIZZLE
AC_SUBST(ARCH)
AC_SUBST(LIBBURN_ARCH_LIBS)
dnl Add compiler-specific flags
dnl See if the user wants aggressive optimizations of the code
AC_ARG_ENABLE(debug,
[ --enable-debug Disable aggressive optimizations [default=yes]],
, enable_debug=yes)
if test x$enable_debug != xyes; then
if test x$GCC = xyes; then
CFLAGS="$CFLAGS -O3"
CFLAGS="$CFLAGS -fexpensive-optimizations"
fi
CFLAGS="$CFLAGS -DNDEBUG"
else
if test x$GCC = xyes; then
CFLAGS="$CFLAGS -g -pedantic -Wall"
fi
CFLAGS="$CFLAGS -DDEBUG"
fi
AC_CONFIG_FILES([
Makefile
version.h
xorriso.pc
])
AC_OUTPUT

136
test/make_xorriso_standalone.sh Executable file
View File

@ -0,0 +1,136 @@
#!/bin/sh
#
# Copyright 2008 Thomas Schmitt, scdbackup@gmx.net, GPL
#
# Creates a standalone tree for building xorriso
# from the contents of a unified libburnia development tree.
# To be executed in the parent of the *-develop directories.
#
# From that tree can be build a binary xorriso/xorriso
# which at runtime depends only on libc and libpthread.
# Execute in $lone_dir :
#
# ./bootstrap && ./configure && make
#
current_dir=$(pwd)
lone_dir="$current_dir"/"xorriso-standalone"
create_dir() {
if mkdir "$1"
then
dummy=dummy
else
echo "Failed to create : $r1o" >&2
exit 1
fi
}
goto_dir() {
if cd "$1"
then
dummy=dummy
else
echo "Failed to cd $1" >&2
exit 1
fi
}
copy_files() {
if cp "$@"
then
dummy=dummy
else
echo "Failed to : cp " "$@" >&2
exit 1
fi
}
if test -e "$lone_dir"
then
echo "Already existing : $lone_dir" >&2
exit 1
fi
# Top level directory
goto_dir "$current_dir"/libisoburn-develop
create_dir "$lone_dir"
copy_files \
AUTHORS \
CONTRIBUTORS \
TODO \
acinclude.m4 \
aclocal.m4 \
bootstrap \
compile \
config.guess \
config.status \
config.sub \
depcomp \
install-sh \
libtool \
ltmain.sh \
missing \
mkinstalldirs \
version.h.in \
\
"$lone_dir"
copy_files \
test/configure_ac.txt \
"$lone_dir"/configure.ac
copy_files \
test/xorriso_makefile_am.txt \
"$lone_dir"/Makefile.am
copy_files \
test/xorriso_pc_in.txt \
"$lone_dir"/xorriso.pc.in
# libisoburn
create_dir "$lone_dir"/libisoburn
copy_files \
ng_src/*.[ch] \
"$lone_dir"/libisoburn
create_dir "$lone_dir"/xorriso
copy_files \
test/compile_xorriso.sh \
test/ng_xorrisoburn.[ch] \
test/xorriso.[ch1] \
test/xorriso_private.h \
test/xorriso_timestamp.h \
"$lone_dir"/xorriso
mv "$lone_dir"/xorriso/ng_xorrisoburn.h "$lone_dir"/xorriso/xorrisoburn.h
mv "$lone_dir"/xorriso/ng_xorrisoburn.c "$lone_dir"/xorriso/xorrisoburn.c
# >>> patch compile_xorriso.sh for standalone
# nglibisofs
create_dir "$lone_dir"/libisofs
goto_dir "$current_dir"/nglibisofs-develop
copy_files src/*.[ch] "$lone_dir"/libisofs
# libburn
create_dir "$lone_dir"/libburn
goto_dir "$current_dir"/libburn-develop
copy_files libburn/*.[ch] "$lone_dir"/libburn
echo "Done"
echo "HINT: Now build xorriso/xorriso by:"
echo " cd '$lone_dir' && ./bootstrap && ./configure && make"
echo

View File

@ -0,0 +1,174 @@
pkgconfigdir=$(libdir)/pkgconfig
libincludedir=
lib_LTLIBRARIES =
## ========================================================================= ##
libinclude_HEADERS =
## ========================================================================= ##
noinst_PROGRAMS =
bin_PROGRAMS = \
xorriso/xorriso
xorriso_xorriso_CPPFLAGS = -I./libburn -I./libisofs -I./libisoburn -I./xorriso
# No readline in the vanilla version because the necessary headers
# are in a separate readline-development package.
xorriso_xorriso_CFLAGS = -DXorriso_standalonE -DXorriso_with_maiN -DXorriso_with_regeX
xorriso_xorriso_LDADD = $(THREAD_LIBS)
xorriso_xorriso_SOURCES = \
\
xorriso.h \
xorriso_private.h \
xorriso/xorriso.c \
xorrisoburn.h \
xorriso/xorrisoburn.c \
xorriso/xorriso_timestamp.h \
\
libisoburn/libisoburn.h \
libisoburn/isoburn.h \
libisoburn/isoburn.c \
libisoburn/isofs_wrap.c \
libisoburn/burn_wrap.c \
libisoburn/data_source.c \
\
libisofs/builder.h \
libisofs/builder.c \
libisofs/error.h \
libisofs/node.h \
libisofs/node.c \
libisofs/tree.h \
libisofs/tree.c \
libisofs/image.h \
libisofs/image.c \
libisofs/fsource.h \
libisofs/fsource.c \
libisofs/fs_local.c \
libisofs/fs_image.h \
libisofs/fs_image.c \
libisofs/messages.h \
libisofs/messages.c \
libisofs/libiso_msgs.h \
libisofs/libiso_msgs.c \
libisofs/stream.h \
libisofs/stream.c \
libisofs/util.h \
libisofs/util.c \
libisofs/util_rbtree.c \
libisofs/util_htable.c \
libisofs/filesrc.h \
libisofs/filesrc.c \
libisofs/ecma119.h \
libisofs/ecma119.c \
libisofs/ecma119_tree.h \
libisofs/ecma119_tree.c \
libisofs/writer.h \
libisofs/buffer.c \
libisofs/rockridge.h \
libisofs/rockridge.c \
libisofs/rockridge_read.c \
libisofs/joliet.h \
libisofs/joliet.c \
libisofs/eltorito.h \
libisofs/eltorito.c \
libisofs/data_source.c \
\
libburn/async.c \
libburn/async.h \
libburn/back_hacks.h \
libburn/cleanup.c \
libburn/cleanup.h \
libburn/crc.c \
libburn/crc.h \
libburn/debug.c \
libburn/debug.h \
libburn/drive.c \
libburn/drive.h \
libburn/error.h \
libburn/file.c \
libburn/file.h \
libburn/init.c \
libburn/init.h \
libburn/lec.c \
libburn/lec.h \
libburn/libburn.h \
libburn/libdax_audioxtr.h \
libburn/libdax_audioxtr.c \
libburn/libdax_msgs.h \
libburn/libdax_msgs.c \
libburn/mmc.c \
libburn/mmc.h \
libburn/null.c \
libburn/null.h \
libburn/options.c \
libburn/options.h \
libburn/os.h \
libburn/read.c \
libburn/read.h \
libburn/sbc.c \
libburn/sbc.h \
libburn/sector.c \
libburn/sector.h \
libburn/sg.c \
libburn/sg.h \
libburn/source.h \
libburn/source.c \
libburn/spc.c \
libburn/spc.h \
libburn/structure.c \
libburn/structure.h \
libburn/toc.c \
libburn/toc.h \
libburn/transport.h \
libburn/util.c \
libburn/util.h \
libburn/write.c \
libburn/write.h \
\
version.h
## ========================================================================= ##
# Indent source files
indent_files =
indent: $(indent_files)
indent -bad -bap -nbbb -nbbo -nbc -bli0 -br -bls \
-cdw -ce -cli0 -ncs -nbfda -i8 -l79 -lc79 \
-lp -saf -sai -nprs -npsl -saw -sob -ss -ut \
-sbi0 -nsc -ts8 -npcs -ncdb -fca \
$^
.PHONY: indent
## ========================================================================= ##
# Extra things
nodist_pkgconfig_DATA = \
xorriso.pc
man_MANS = xorriso/xorriso.1
EXTRA_DIST = \
xorriso.pc.in \
version.h.in \
README \
AUTHORS \
CONTRIBUTORS \
COPYRIGHT \
COPYING \
NEWS \
ChangeLog \
INSTALL \
xorriso/compile_xorriso.sh \
$(man_MANS)

12
test/xorriso_pc_in.txt Normal file
View File

@ -0,0 +1,12 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: xorriso
Description: ISO 9660 filesystem image manipulator
Version: @VERSION@
Requires:
Libs: -L${libdir} -lpthread
Cflags: