Browse Source

Moved java bindings to experimental

master
Mario Danic 11 years ago
parent
commit
cb1a0a4ecc
70 changed files with 0 additions and 14657 deletions
  1. +0
    -1
      java/trunk/AUTHORS
  2. +0
    -280
      java/trunk/COPYING
  3. +0
    -0
      java/trunk/ChangeLog
  4. +0
    -32
      java/trunk/INSTALL
  5. +0
    -0
      java/trunk/NEWS
  6. +0
    -20
      java/trunk/README
  7. +0
    -16
      java/trunk/TODO
  8. +0
    -4
      java/trunk/build.properties.in
  9. +0
    -288
      java/trunk/build.xml
  10. +0
    -228
      java/trunk/config.log
  11. +0
    -749
      java/trunk/config.status
  12. +0
    -3757
      java/trunk/configure
  13. +0
    -37
      java/trunk/configure.ac
  14. +0
    -4
      java/trunk/libs/README
  15. +0
    -6
      java/trunk/org.eclipse.jdt.ui.prefs
  16. +0
    -82
      java/trunk/src/java/org/pykix/libburnia/bindings/Proxy.java
  17. +0
    -78
      java/trunk/src/java/org/pykix/libburnia/libburn/BlockType.java
  18. +0
    -482
      java/trunk/src/java/org/pykix/libburnia/libburn/Burn.java
  19. +0
    -39
      java/trunk/src/java/org/pykix/libburnia/libburn/BurnException.java
  20. +0
    -101
      java/trunk/src/java/org/pykix/libburnia/libburn/BurnMode.java
  21. +0
    -72
      java/trunk/src/java/org/pykix/libburnia/libburn/BurnSource.java
  22. +0
    -129
      java/trunk/src/java/org/pykix/libburnia/libburn/Disc.java
  23. +0
    -46
      java/trunk/src/java/org/pykix/libburnia/libburn/DiscStatus.java
  24. +0
    -737
      java/trunk/src/java/org/pykix/libburnia/libburn/Drive.java
  25. +0
    -311
      java/trunk/src/java/org/pykix/libburnia/libburn/DriveInfo.java
  26. +0
    -63
      java/trunk/src/java/org/pykix/libburnia/libburn/DriveStatus.java
  27. +0
    -58
      java/trunk/src/java/org/pykix/libburnia/libburn/FormatDesc.java
  28. +0
    -28
      java/trunk/src/java/org/pykix/libburnia/libburn/FormatStatus.java
  29. +0
    -83
      java/trunk/src/java/org/pykix/libburnia/libburn/Formats.java
  30. +0
    -128
      java/trunk/src/java/org/pykix/libburnia/libburn/Message.java
  31. +0
    -140
      java/trunk/src/java/org/pykix/libburnia/libburn/Msf.java
  32. +0
    -243
      java/trunk/src/java/org/pykix/libburnia/libburn/MultiCaps.java
  33. +0
    -91
      java/trunk/src/java/org/pykix/libburnia/libburn/Profile.java
  34. +0
    -164
      java/trunk/src/java/org/pykix/libburnia/libburn/Progress.java
  35. +0
    -141
      java/trunk/src/java/org/pykix/libburnia/libburn/ReadOpts.java
  36. +0
    -106
      java/trunk/src/java/org/pykix/libburnia/libburn/ScsiAdr.java
  37. +0
    -182
      java/trunk/src/java/org/pykix/libburnia/libburn/Session.java
  38. +0
    -35
      java/trunk/src/java/org/pykix/libburnia/libburn/SessionFormat.java
  39. +0
    -166
      java/trunk/src/java/org/pykix/libburnia/libburn/Source.java
  40. +0
    -32
      java/trunk/src/java/org/pykix/libburnia/libburn/SourceStatus.java
  41. +0
    -127
      java/trunk/src/java/org/pykix/libburnia/libburn/SpeedDescriptor.java
  42. +0
    -176
      java/trunk/src/java/org/pykix/libburnia/libburn/TocEntry.java
  43. +0
    -294
      java/trunk/src/java/org/pykix/libburnia/libburn/Track.java
  44. +0
    -281
      java/trunk/src/java/org/pykix/libburnia/libburn/WriteOpts.java
  45. +0
    -66
      java/trunk/src/java/org/pykix/libburnia/libburn/WriteType.java
  46. +0
    -26
      java/trunk/src/java/org/pykix/libburnia/libisofs/Ecma119ExtensionFlag.java
  47. +0
    -62
      java/trunk/src/java/org/pykix/libburnia/libisofs/IsoExclude.java
  48. +0
    -232
      java/trunk/src/java/org/pykix/libburnia/libisofs/IsoTreeNode.java
  49. +0
    -60
      java/trunk/src/java/org/pykix/libburnia/libisofs/IsoVolSet.java
  50. +0
    -290
      java/trunk/src/java/org/pykix/libburnia/libisofs/IsoVolume.java
  51. +0
    -123
      java/trunk/src/jni/libburn/BindingsUtil.c
  52. +0
    -37
      java/trunk/src/jni/libburn/BindingsUtil.h
  53. +0
    -521
      java/trunk/src/jni/libburn/Burn.c
  54. +0
    -123
      java/trunk/src/jni/libburn/Disc.c
  55. +0
    -672
      java/trunk/src/jni/libburn/Drive.c
  56. +0
    -49
      java/trunk/src/jni/libburn/DriveInfo.c
  57. +0
    -111
      java/trunk/src/jni/libburn/Message.c
  58. +0
    -229
      java/trunk/src/jni/libburn/Progress.c
  59. +0
    -135
      java/trunk/src/jni/libburn/ReadOpts.c
  60. +0
    -91
      java/trunk/src/jni/libburn/ScsiAdr.c
  61. +0
    -168
      java/trunk/src/jni/libburn/Session.c
  62. +0
    -182
      java/trunk/src/jni/libburn/Source.c
  63. +0
    -223
      java/trunk/src/jni/libburn/Track.c
  64. +0
    -304
      java/trunk/src/jni/libburn/WriteOpts.c
  65. +0
    -74
      java/trunk/src/jni/libisofs/IsoExclude.c
  66. +0
    -131
      java/trunk/src/jni/libisofs/IsoTreeNode.c
  67. +0
    -55
      java/trunk/src/jni/libisofs/IsoVolSet.c
  68. +0
    -292
      java/trunk/src/jni/libisofs/IsoVolume.c
  69. +0
    -152
      java/trunk/src/test/org/pykix/libburnia/test/IsoFsMain.java
  70. +0
    -212
      java/trunk/src/test/org/pykix/libburnia/test/Test.java

+ 0
- 1
java/trunk/AUTHORS View File

@@ -1 +0,0 @@
Vreixo Formoso <metalpain2002@yahoo.es>

+ 0
- 280
java/trunk/COPYING View File

@@ -1,280 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.

When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.

We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.

b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.

c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,

b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,

c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.

5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.

7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.

9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS

+ 0
- 0
java/trunk/ChangeLog View File


+ 0
- 32
java/trunk/INSTALL View File

@@ -1,32 +0,0 @@
Installation Instructions
*************************

TODO write better install instructions
TODO you need Apache Ant to compile the code
TODO ant install is not implemented yet, you should copy .jar and .so files
manually

The simplest way to compile this package is:

1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.

Running `configure' might take a while. While running, it prints
some messages telling which features it is checking for.

2. Type `ant' to compile the package.

3. Optionally, type `ant check' to run any self-tests that come with
the package.

4. Type `ant install' to install the programs and any data files and
documentation.

5. You can remove the program binaries and object files from the
source code directory by typing `ant clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `ant distclean'. There is
also a `ant maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.

+ 0
- 0
java/trunk/NEWS View File


+ 0
- 20
java/trunk/README View File

@@ -1,20 +0,0 @@

These are Java bindings for the libburnia project <libburnia.pykix.org>

This version is a full binding for libisofs 0.2.4 and libburn 0.3.4.

NOTE:

This is realeased under GPL.

However, it is implemented using 1.5 version of the Java language. At this time
there isn't, at my knowledge, any free JVM implementation with fully support
for Java 1.5. Given that this project is still in a very early stage, I really
prefer to live with this problem for a while. I hope that free JVM with 1.5
support will be available soon.

Anyway as these bindings reach release 1.0 they will be fully compilable and
executable on a free environment, even if this implies porting them back to 1.4.

Vreixo,
17-Apr-2007

+ 0
- 16
java/trunk/TODO View File

@@ -1,16 +0,0 @@

Documentation:
- Review of javadocs, update methods to java ones.
- Write a little tutorial.
- Usage examples.

Design:
- Improve error notification. Decide what functions should return error
as int/boolean and what should throw an exception. Design exception hierarchy.
- Walk to a improved Java-like API...
- Java based BurnSource. java IO/NIO burn sources

Testing:
- Test program like test/libburner and test/iso.c (this last already done)
- Write a lot of tests, either manual tests and automatic test (Junit based)
to cover all methods.

+ 0
- 4
java/trunk/build.properties.in View File

@@ -1,4 +0,0 @@
package=@PACKAGE_NAME@
version=@PACKAGE_VERSION@
cflags.isofs=@ISOFS_INCLUDE@
cflags.burn=@BURN_INCLUDE@

+ 0
- 288
java/trunk/build.xml View File

@@ -1,288 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>

<!--
build.xml
Copyright (c) 2007 Vreixo Formoso
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
See COPYING file for details.
-->

<project name="java-libburn" default="all" basedir=".">

<!-- === App properties ============================ -->
<property file="build.properties" />

<!-- === Compiler properties ====================== -->
<property name="build.compiler" value="modern" />

<property name="javac.debug" value="on" />
<property name="javac.optimize" value="off" />
<property name="javac.deprecation" value="on" />
<property name="javac.nowarn" value="on" />
<property name="cc.debug" value="on" />

<!-- === directories ====================== -->
<property name="src" value="src" />
<property name="src.java" value="${src}/java" />
<property name="src.test" value="${src}/test" />
<property name="src.jni" value="${src}/jni" />
<property name="build" value="build" />
<property name="build.object" value="${build}/.object" />
<property name="build.headers" value="${build}/.headers" />
<property name="build.classes" value="${build}/.classes" />
<property name="build.test" value="${build}/.test" />
<property name="doc" value="doc" />
<property name="doc.api" value="${doc}/api" />
<property name="libs" value="libs" />
<property name="dist.tar" value="${package}-${version}" />
<property name="dist.jar" value="${package}-${version}.jar" />

<!-- === CC tasks ====================== -->
<property name="cc.jar" value="${libs}/cpptasks.jar"/>
<taskdef resource="cpptasks.tasks"
classpath="${cc.jar}"
loaderRef="cctasks"/>
<typedef resource="cpptasks.types"
classpath="${cc.jar}"
loaderRef="cctasks"/>
<!-- == JavaDoc URLs ========================================= -->

<!-- JavaDoc bottom -->
<property name="javadoc.bottomline" value="${package} ${version}" />

<!-- == target "init" ================================================= -->
<target name="init">
<echo>
----------------------------------------------------
Building ${package}...
----------------------------------------------------
</echo>
</target>

<!-- == target "all" ================================================== -->
<target name="all" depends="init, jars, jni" />

<!-- == target "compile" ============================================== -->
<target name="compile" depends="init">
<mkdir dir="${build.classes}" />
<javac srcdir="${src.java}" destdir="${build.classes}"
debug="${javac.debug}"
optimize="${javac.optimize}" deprecation="${javac.deprecation}"
nowarn="${javac.nowarn}" />
</target>

<!-- == target "compile.test" ========================================== -->
<target name="compile.test" depends="init">
<mkdir dir="${build.test}" />
<javac srcdir="${src.test}" destdir="${build.test}"
classpath="${build.classes}" debug="${javac.debug}"
optimize="${javac.optimize}" deprecation="${javac.deprecation}"
nowarn="${javac.nowarn}" />
</target>

<!-- == target "headers" ============================================== -->
<target name="headers" depends="compile">
<mkdir dir="${build.headers}" />
<javah destdir="${build.headers}"
force="yes" classpath="${build.classes}">
<class name="org.pykix.libburnia.libisofs.IsoVolume"/>
<class name="org.pykix.libburnia.libisofs.IsoTreeNode"/>
<class name="org.pykix.libburnia.libisofs.IsoExclude"/>
<class name="org.pykix.libburnia.libisofs.IsoVolSet"/>
<class name="org.pykix.libburnia.libburn.Burn"/>
<class name="org.pykix.libburnia.libburn.Disc"/>
<class name="org.pykix.libburnia.libburn.Drive"/>
<class name="org.pykix.libburnia.libburn.DriveInfo"/>
<class name="org.pykix.libburnia.libburn.Message"/>
<class name="org.pykix.libburnia.libburn.Progress"/>
<class name="org.pykix.libburnia.libburn.ReadOpts"/>
<class name="org.pykix.libburnia.libburn.ScsiAdr"/>
<class name="org.pykix.libburnia.libburn.Session"/>
<class name="org.pykix.libburnia.libburn.Source"/>
<class name="org.pykix.libburnia.libburn.Track"/>
<class name="org.pykix.libburnia.libburn.WriteOpts"/>
</javah>
</target>
<!-- == target "jni" ================================================== -->
<target name="jni" depends="headers" >
<mkdir dir="${build.object}"/>
<cc debug="${cc.debug}"
link="shared" libtool="yes"
outfile="${build}/${package}-${version}"
objdir="${build.object}"
multithreaded="true"
exceptions="true" >
<defineset define="DEBUG"/>
<compiler name="gcc" />
<compilerarg value="-Wno-pointer-to-int-cast"/>
<compilerarg value="-Wno-int-to-pointer-cast"/>
<!-- A 64 bits off_t is needed for DVD -->
<compilerarg value="-D_FILE_OFFSET_BITS=64"/>
<compilerarg value="-D_LARGEFILE_SOURCE=1"/>
<fileset dir="${src.jni}"/>
<includepath location="${build.headers}" />
<sysincludepath location="${env.JAVA_HOME}/include" />
<sysincludepath location="${cflags.isofs}" />
<sysincludepath location="${cflags.burn}" />
<libset libs="isofs"/>
<libset libs="burn"/>
<linker name="gcc" />
</cc>
</target>


<!-- == target "jars" ================================================= -->
<target name="jars" depends="compile">
<mkdir dir="${build}" />
<jar destfile="${build}/${dist.jar}">
<manifest>
<attribute name="version" value="${version}" />
</manifest>
<fileset dir="${build.classes}" />
</jar>
</target>

<!-- == target "rebuild" ============================================== -->
<target name="rebuild" depends="init, clean, all" />

<!-- == target "distclean" ============================================ -->

<target name="distclean" depends="init">
<delete dir="${build}" />
<delete dir="${doc.api}" />
<delete file="build.properties" />
<delete >
<fileset dir="." includes="config.*" />
</delete>
</target>

<!-- ================ "maintainer-clean" target ======================= -->
<target name="maintainer-clean" depends="distclean" >
<echo>NOT IMPLEMENTED YET</echo>
</target>

<!-- == target "clean" ================================================ -->

<target name="clean" depends="init">
<delete dir="${build.classes}" />
<delete dir="${build.object}" />
<delete dir="${build.test}" />
<delete >
<fileset dir="." includes="hs_err_*" />
</delete>
</target>

<!-- == target "javadoc" ============================================== -->
<target name="doc" depends="compile">
<delete dir="${doc.api}" />
<mkdir dir="${doc.api}" />
<javadoc packagenames="org.*" sourcepath="${src.java}"
classpath="${build.classes}" destdir="${doc.api}" access="public"
windowtitle="${package}" doctitle="${package}"
header="${package}" bottom="${javadoc.bottomline}">
<!--
<link href="${j2se.javadocurl}"/>
-->
</javadoc>
</target>

<!-- ================= "run" target =================================== -->
<target name="run" depends="all, compile.test">
<!--
<java classname="org.pykix.libburnia.test.IsoFsMain" fork="true" >
<arg value="-R"/>
<arg value="-L"/>
<arg value="3"/>
<arg value="/home/metalpain/Projects/LibBurn"/>
<arg value="/home/metalpain/proba.iso"/>
<classpath location="${build.test}" />
<classpath location="${build.classes}"/>
<jvmarg value="-Djava.library.path=${build}" />
</java>
-->
<java classname="org.pykix.libburnia.test.Test" fork="true" >
<classpath location="${build.test}" />
<classpath location="${build.classes}"/>
<jvmarg value="-Djava.library.path=${build}" />
</java>
</target>

<!-- ================= "install" target =============================== -->
<target name="install" depends="all">
<echo>NOT IMPLEMENTED YET</echo>
<!--
It seems that these are default locations for java objects, at
least on Ubuntu:
jars to /usr/share/java
jni libs to /usr/lib/jni
-->
</target>
<!-- ========================= "dist" target ========================== -->
<target name="dist" depends="init, dist-tarZ" />
<target name="dist-tarZ" >
<mkdir dir="${build}"/>
<patternset id="tar.commonfiles" includes="java-libburn/**"
excludes="**/build/**, **/bin/**, **/*.back, **/*~,
**/*.sh, **/doc/api/**, **/autom4te.cache/**,
**/build.properties/**, **/.bzr**" />
<!--
.tar.gz distribution (with execution permissions for .sh files)
-->
<delete file="${build}/${dist.tar}.tar.gz"/>
<tar tarfile="${build}/${dist.tar}.tar.gz" longfile="gnu"
compression="gzip">
<tarfileset dir="..">
<patternset refid="tar.commonfiles"/>
</tarfileset>
<tarfileset dir=".." mode="755" includes="java-libburn/**/*.sh"/>
</tar>
</target>
<!-- ======================== "backup" target ========================= -->
<target name="backup" >
<mkdir dir="${build}"/>
<patternset id="tar.commonfiles" includes="java-libburn/**"
excludes="**/build/**, **/bin/**, **/*.back, **/*~,
**/*.sh, **/doc/api/**, **/autom4te.cache/**,
**/build.properties/**" />
<delete file="${build}/${dist.tar}.back.tar.gz"/>
<tar tarfile="${build}/${dist.tar}.back.tar.gz" longfile="gnu"
compression="gzip">
<tarfileset dir="..">
<patternset refid="tar.commonfiles"/>
</tarfileset>
<tarfileset dir=".." mode="755" includes="java-libburn/**/*.sh"/>
</tar>
</target>

</project>

+ 0
- 228
java/trunk/config.log View File

@@ -1,228 +0,0 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by java-libburn configure 0.1, which was
generated by GNU Autoconf 2.60. Invocation command line was

$ ./configure

## --------- ##
## Platform. ##
## --------- ##

hostname = mplaptop
uname -m = i686
uname -r = 2.6.17-10-generic
uname -s = Linux
uname -v = #2 SMP Fri Oct 13 18:45:35 UTC 2006

/usr/bin/uname -p = unknown
/bin/uname -X = unknown

/bin/arch = i686
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown

PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/bin/X11
PATH: /usr/games


## ----------- ##
## Core tests. ##
## ----------- ##

configure:1633: checking for javac
configure:1651: found /usr/local/bin/javac
configure:1663: result: /usr/local/bin/javac
configure:1673: checking for javah
configure:1691: found /usr/bin/javah
configure:1703: result: /usr/bin/javah
configure:1713: checking for jar
configure:1731: found /usr/bin/jar
configure:1743: result: /usr/bin/jar
configure:1800: checking for gcc
configure:1816: found /usr/bin/gcc
configure:1827: result: gcc
configure:2065: checking for C compiler version
configure:2072: gcc --version >&5
gcc (GCC) 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:2075: $? = 0
configure:2082: gcc -v >&5
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)
configure:2085: $? = 0
configure:2092: gcc -V >&5
gcc: '-V' option must have argument
configure:2095: $? = 1
configure:2118: checking for C compiler default output file name
configure:2145: gcc conftest.c >&5
configure:2148: $? = 0
configure:2194: result: a.out
configure:2199: checking whether the C compiler works
configure:2209: ./a.out
configure:2212: $? = 0
configure:2229: result: yes
configure:2236: checking whether we are cross compiling
configure:2238: result: no
configure:2241: checking for suffix of executables
configure:2248: gcc -o conftest conftest.c >&5
configure:2251: $? = 0
configure:2275: result:
configure:2281: checking for suffix of object files
configure:2307: gcc -c conftest.c >&5
configure:2310: $? = 0
configure:2333: result: o
configure:2337: checking whether we are using the GNU C compiler
configure:2366: gcc -c conftest.c >&5
configure:2372: $? = 0
configure:2379: test -z "$ac_c_werror_flag" || test ! -s conftest.err
configure:2382: $? = 0
configure:2389: test -s conftest.o
configure:2392: $? = 0
configure:2406: result: yes
configure:2411: checking whether gcc accepts -g
configure:2441: gcc -c -g conftest.c >&5
configure:2447: $? = 0
configure:2454: test -z "$ac_c_werror_flag" || test ! -s conftest.err
configure:2457: $? = 0
configure:2464: test -s conftest.o
configure:2467: $? = 0
configure:2597: result: yes
configure:2614: checking for gcc option to accept ISO C89
configure:2688: gcc -c -g -O2 conftest.c >&5
configure:2694: $? = 0
configure:2701: test -z "$ac_c_werror_flag" || test ! -s conftest.err
configure:2704: $? = 0
configure:2711: test -s conftest.o
configure:2714: $? = 0
configure:2734: result: none needed
configure:2893: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by java-libburn config.status 0.1, which was
generated by GNU Autoconf 2.60. Invocation command line was

CONFIG_FILES =
CONFIG_HEADERS =
CONFIG_LINKS =
CONFIG_COMMANDS =
$ ./config.status

on mplaptop

config.status:563: creating build.properties

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_c_compiler_gnu=yes
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_objext=o
ac_cv_path_JAR=/usr/bin/jar
ac_cv_path_JAVAC=/usr/local/bin/javac
ac_cv_path_JAVAH=/usr/bin/javah
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes

## ----------------- ##
## Output variables. ##
## ----------------- ##

BURN_INCLUDE='/usr/local/include/libburn'
CC='gcc'
CFLAGS='-g -O2'
CPPFLAGS=''
DEFS='-DPACKAGE_NAME=\"java-libburn\" -DPACKAGE_TARNAME=\"java-libburn\" -DPACKAGE_VERSION=\"0.1\" -DPACKAGE_STRING=\"java-libburn\ 0.1\" -DPACKAGE_BUGREPORT=\"\"'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EXEEXT=''
ISOFS_INCLUDE='/usr/local/include/libisofs'
JAR='/usr/bin/jar'
JAVAC='/usr/local/bin/javac'
JAVAH='/usr/bin/javah'
LDFLAGS=''
LIBOBJS=''
LIBS=''
LTLIBOBJS=''
OBJEXT='o'
PACKAGE_BUGREPORT=''
PACKAGE_NAME='java-libburn'
PACKAGE_STRING='java-libburn 0.1'
PACKAGE_TARNAME='java-libburn'
PACKAGE_VERSION='0.1'
PATH_SEPARATOR=':'
SHELL='/bin/bash'
ac_ct_CC='gcc'
bindir='${exec_prefix}/bin'
build_alias=''
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='${prefix}'
host_alias=''
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr/local'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

#define PACKAGE_NAME "java-libburn"
#define PACKAGE_TARNAME "java-libburn"
#define PACKAGE_VERSION "0.1"
#define PACKAGE_STRING "java-libburn 0.1"
#define PACKAGE_BUGREPORT ""

configure: exit 0

+ 0
- 749
java/trunk/config.status View File

@@ -1,749 +0,0 @@
#! /bin/bash
# Generated by configure.
# Run this file to recreate the current configuration.
# Compiler output produced by configure, useful for debugging
# configure, is in config.log if it exists.

debug=false
ac_cs_recheck=false
ac_cs_silent=false
SHELL=${CONFIG_SHELL-/bin/bash}
## --------------------- ##
## M4sh Initialization. ##
## --------------------- ##

# Be Bourne compatible
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
# Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
fi
BIN_SH=xpg4; export BIN_SH # for Tru64
DUALCASE=1; export DUALCASE # for MKS sh


# PATH needs CR
# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits

# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
echo "#! /bin/sh" >conf$$.sh
echo "exit 0" >>conf$$.sh
chmod +x conf$$.sh
if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
PATH_SEPARATOR=';'
else
PATH_SEPARATOR=:
fi
rm -f conf$$.sh
fi

# Support unset when possible.
if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
as_unset=unset
else
as_unset=false
fi


# IFS
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
as_nl='
'
IFS=" "" $as_nl"

# Find who we are. Look in the path if we contain no directory separator.
case $0 in
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
done
IFS=$as_save_IFS

;;
esac
# We did not find ourselves, most probably we were run as `sh COMMAND'
# in which case we are not to be found in the path.
if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
{ (exit 1); exit 1; }
fi

# Work around bugs in pre-3.0 UWIN ksh.
for as_var in ENV MAIL MAILPATH
do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
done
PS1='$ '
PS2='> '
PS4='+ '

# NLS nuisances.
for as_var in \
LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
LC_TELEPHONE LC_TIME
do
if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
eval $as_var=C; export $as_var
else
($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
fi
done

# Required to use basename.
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi

if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
as_basename=basename
else
as_basename=false
fi


# Name of the executable.
as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
}
/^X\/\(\/\/\)$/{
s//\1/
q
}
/^X\/\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`

# CDPATH.
$as_unset CDPATH



as_lineno_1=$LINENO
as_lineno_2=$LINENO
test "x$as_lineno_1" != "x$as_lineno_2" &&
test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {

# Create $as_me.lineno as a copy of $as_myself, but with $LINENO
# uniformly replaced by the line number. The first 'sed' inserts a
# line-number line after each line using $LINENO; the second 'sed'
# does the real work. The second script uses 'N' to pair each
# line-number line with the line containing $LINENO, and appends
# trailing '-' during substitution so that $LINENO is not a special
# case at line end.
# (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
# scripts with optimization help from Paolo Bonzini. Blame Lee
# E. McMahon (1931-1989) for sed's syntax. :-)
sed -n '
p
/[$]LINENO/=
' <$as_myself |
sed '
s/[$]LINENO.*/&-/
t lineno
b
:lineno
N
:loop
s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
t loop
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
{ echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
{ (exit 1); exit 1; }; }

# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
. "./$as_me.lineno"
# Exit status is that of the last command.
exit
}


if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
as_dirname=dirname
else
as_dirname=false
fi

ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in
-n*)
case `echo 'x\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
*) ECHO_C='\c';;
esac;;
*)
ECHO_N='-n';;
esac

if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi

rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
else
rm -f conf$$.dir
mkdir conf$$.dir
fi
echo >conf$$.file
if ln -s conf$$.file conf$$ 2>/dev/null; then
as_ln_s='ln -s'
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
# In both cases, we have to default to `cp -p'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
as_ln_s='cp -p'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
as_ln_s='cp -p'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null

if mkdir -p . 2>/dev/null; then
as_mkdir_p=:
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
fi

# Find out whether ``test -x'' works. Don't use a zero-byte file, as
# systems may use methods other than mode bits to determine executability.
cat >conf$$.file <<_ASEOF
#! /bin/sh
exit 0
_ASEOF
chmod +x conf$$.file
if test -x conf$$.file >/dev/null 2>&1; then
as_executable_p="test -x"
else
as_executable_p=:
fi
rm -f conf$$.file

# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"

# Sed expression to map a string onto a valid variable name.
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"


exec 6>&1

# Save the log message, to keep $[0] and so on meaningful, and to
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by java-libburn $as_me 0.1, which was
generated by GNU Autoconf 2.60. Invocation command line was

CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
CONFIG_LINKS = $CONFIG_LINKS
CONFIG_COMMANDS = $CONFIG_COMMANDS
$ $0 $@

on `(hostname || uname -n) 2>/dev/null | sed 1q`
"

# Files that config.status was made for.
config_files=" build.properties"

ac_cs_usage="\
\`$as_me' instantiates files from templates according to the
current configuration.

Usage: $0 [OPTIONS] [FILE]...

-h, --help print this help, then exit
-V, --version print version number, then exit
-q, --quiet do not print progress messages
-d, --debug don't remove temporary files
--recheck update $as_me by reconfiguring in the same conditions
--file=FILE[:TEMPLATE]
instantiate the configuration file FILE

Configuration files:
$config_files

Report bugs to <bug-autoconf@gnu.org>."

ac_cs_version="\
java-libburn config.status 0.1
configured by ./configure, generated by GNU Autoconf 2.60,
with options \"\"

Copyright (C) 2006 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."

ac_pwd='/home/metalpain/Dados/workspace/java-libburn'
srcdir='.'
# If no file are specified by the user, then we need to provide default
# value. By we need to know if files were specified by the user.
ac_need_defaults=:
while test $# != 0
do
case $1 in
--*=*)
ac_option=`expr "X$1" : 'X\([^=]*\)='`
ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
ac_shift=:
;;
*)
ac_option=$1
ac_optarg=$2
ac_shift=shift
;;
esac

case $ac_option in
# Handling of the options.
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
ac_cs_recheck=: ;;
--version | --versio | --versi | --vers | --ver | --ve | --v | -V )
echo "$ac_cs_version"; exit ;;
--debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
CONFIG_FILES="$CONFIG_FILES $ac_optarg"
ac_need_defaults=false;;
--he | --h | --help | --hel | -h )
echo "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil | --si | --s)
ac_cs_silent=: ;;

# This is an error.
-*) { echo "$as_me: error: unrecognized option: $1
Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; } ;;

*) ac_config_targets="$ac_config_targets $1"
ac_need_defaults=false ;;

esac
shift
done

ac_configure_extra_args=

if $ac_cs_silent; then
exec 6>/dev/null
ac_configure_extra_args="$ac_configure_extra_args --silent"
fi

if $ac_cs_recheck; then
echo "running CONFIG_SHELL=/bin/bash /bin/bash ./configure " $ac_configure_extra_args " --no-create --no-recursion" >&6
CONFIG_SHELL=/bin/bash
export CONFIG_SHELL
exec /bin/bash "./configure" $ac_configure_extra_args --no-create --no-recursion
fi

exec 5>>config.log
{
echo
sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
echo "$ac_log"
} >&5


# Handling of arguments.
for ac_config_target in $ac_config_targets
do
case $ac_config_target in
"build.properties") CONFIG_FILES="$CONFIG_FILES build.properties" ;;

*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
done


# If the user did not use the arguments to specify the items to instantiate,
# then the envvar interface is used. Set only those that are not.
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
if $ac_need_defaults; then
test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
fi

# Have a temporary directory for convenience. Make it in the build tree
# simply because there is no reason against having it here, and in addition,
# creating and moving files from /tmp can sometimes cause problems.
# Hook for its removal unless debugging.
# Note that there is a small window in which the directory will not be cleaned:
# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
tmp=
trap 'exit_status=$?
{ test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
' 0
trap '{ (exit 1); exit 1; }' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.

{
tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
tmp=./conf$$-$RANDOM
(umask 077 && mkdir "$tmp")
} ||
{
echo "$me: cannot create a temporary directory in ." >&2
{ (exit 1); exit 1; }
}

#
# Set up the sed scripts for CONFIG_FILES section.
#

# No need to generate the scripts if there are no CONFIG_FILES.
# This happens for instance when ./config.status config.h
if test -n "$CONFIG_FILES"; then

cat >"$tmp/subs-1.sed" <<\CEOF
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
s,@SHELL@,|#_!!_#|/bin/bash,g
s,@PATH_SEPARATOR@,|#_!!_#|:,g
s,@PACKAGE_NAME@,|#_!!_#|java-libburn,g
s,@PACKAGE_TARNAME@,|#_!!_#|java-libburn,g
s,@PACKAGE_VERSION@,|#_!!_#|0.1,g
s,@PACKAGE_STRING@,|#_!!_#|java-libburn 0.1,g
s,@PACKAGE_BUGREPORT@,|#_!!_#|,g
s,@exec_prefix@,|#_!!_#|${prefix},g
s,@prefix@,|#_!!_#|/usr/local,g
s,@program_transform_name@,|#_!!_#|s\,x\,x\,,g
s,@bindir@,|#_!!_#|${exec_prefix}/bin,g
s,@sbindir@,|#_!!_#|${exec_prefix}/sbin,g
s,@libexecdir@,|#_!!_#|${exec_prefix}/libexec,g
s,@datarootdir@,|#_!!_#|${prefix}/share,g
s,@datadir@,|#_!!_#|${datarootdir},g
s,@sysconfdir@,|#_!!_#|${prefix}/etc,g
s,@sharedstatedir@,|#_!!_#|${prefix}/com,g
s,@localstatedir@,|#_!!_#|${prefix}/var,g
s,@includedir@,|#_!!_#|${prefix}/include,g
s,@oldincludedir@,|#_!!_#|/usr/include,g
s,@docdir@,|#_!!_#|${datarootdir}/doc/${PACKAGE_TARNAME},g
s,@infodir@,|#_!!_#|${datarootdir}/info,g
s,@htmldir@,|#_!!_#|${docdir},g
s,@dvidir@,|#_!!_#|${docdir},g
s,@pdfdir@,|#_!!_#|${docdir},g
s,@psdir@,|#_!!_#|${docdir},g
s,@libdir@,|#_!!_#|${exec_prefix}/lib,g
s,@localedir@,|#_!!_#|${datarootdir}/locale,g
s,@mandir@,|#_!!_#|${datarootdir}/man,g
s,@DEFS@,|#_!!_#|-DPACKAGE_NAME=\\"java-libburn\\" -DPACKAGE_TARNAME=\\"java-libburn\\" -DPACKAGE_VERSION=\\"0.1\\" -DPACKAGE_STRING=\\"java-libburn\\ 0.1\\" -DPACKAGE_BUGREPORT=\\"\\",g
s,@ECHO_C@,|#_!!_#|,g
s,@ECHO_N@,|#_!!_#|-n,g
s,@ECHO_T@,|#_!!_#|,g
s,@LIBS@,|#_!!_#|,g
s,@build_alias@,|#_!!_#|,g
s,@host_alias@,|#_!!_#|,g
s,@target_alias@,|#_!!_#|,g
s,@JAVAC@,|#_!!_#|/usr/local/bin/javac,g
s,@JAVAH@,|#_!!_#|/usr/bin/javah,g
s,@JAR@,|#_!!_#|/usr/bin/jar,g
s,@CC@,|#_!!_#|gcc,g
s,@CFLAGS@,|#_!!_#|-g -O2,g
s,@LDFLAGS@,|#_!!_#|,g
s,@CPPFLAGS@,|#_!!_#|,g
s,@ac_ct_CC@,|#_!!_#|gcc,g
s,@EXEEXT@,|#_!!_#|,g
s,@OBJEXT@,|#_!!_#|o,g
s,@ISOFS_INCLUDE@,|#_!!_#|/usr/local/include/libisofs,g
s,@BURN_INCLUDE@,|#_!!_#|/usr/local/include/libburn,g
s,@LIBOBJS@,|#_!!_#|,g
s,@LTLIBOBJS@,|#_!!_#|,g
:end
s/|#_!!_#|//g
CEOF
fi # test -n "$CONFIG_FILES"


for ac_tag in :F $CONFIG_FILES
do
case $ac_tag in
:[FHLC]) ac_mode=$ac_tag; continue;;
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
:L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5
echo "$as_me: error: Invalid tag $ac_tag." >&2;}
{ (exit 1); exit 1; }; };;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
esac
ac_save_IFS=$IFS
IFS=:
set x $ac_tag
IFS=$ac_save_IFS
shift
ac_file=$1
shift

case $ac_mode in
:L) ac_source=$1;;
:[FH])
ac_file_inputs=
for ac_f
do
case $ac_f in
-) ac_f="$tmp/stdin";;
*) # Look for the file first in the build tree, then in the source tree
# (if the path is not absolute). The absolute path cannot be DOS-style,
# because $ac_f cannot contain `:'.
test -f "$ac_f" ||
case $ac_f in
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
{ { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
echo "$as_me: error: cannot find input file: $ac_f" >&2;}
{ (exit 1); exit 1; }; };;
esac
ac_file_inputs="$ac_file_inputs $ac_f"
done

# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated by config.status. */
configure_input="Generated from "`IFS=:
echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure."
if test x"$ac_file" != x-; then
configure_input="$ac_file. $configure_input"
{ echo "$as_me:$LINENO: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
fi

case $ac_tag in
*:-:* | *:-) cat >"$tmp/stdin";;
esac
;;
esac

ac_dir=`$as_dirname -- "$ac_file" ||
$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$ac_file" : 'X\(//\)[^/]' \| \
X"$ac_file" : 'X\(//\)$' \| \
X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$ac_file" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
{ as_dir="$ac_dir"
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
as_dirs=
while :; do
case $as_dir in #(
*\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
as_dir=`$as_dirname -- "$as_dir" ||
$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
test -d "$as_dir" && break
done
test -z "$as_dirs" || eval "mkdir $as_dirs"
} || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
echo "$as_me: error: cannot create directory $as_dir" >&2;}
{ (exit 1); exit 1; }; }; }
ac_builddir=.

case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
# A ".." for each directory in $ac_dir_suffix.
ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
esac ;;
esac
ac_abs_top_builddir=$ac_pwd
ac_abs_builddir=$ac_pwd$ac_dir_suffix
# for backward compatibility:
ac_top_builddir=$ac_top_build_prefix

case $srcdir in
.) # We are building in place.
ac_srcdir=.
ac_top_srcdir=$ac_top_builddir_sub
ac_abs_top_srcdir=$ac_pwd ;;
[\\/]* | ?:[\\/]* ) # Absolute name.
ac_srcdir=$srcdir$ac_dir_suffix;
ac_top_srcdir=$srcdir
ac_abs_top_srcdir=$srcdir ;;
*) # Relative name.
ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
ac_top_srcdir=$ac_top_build_prefix$srcdir
ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
esac
ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix


case $ac_mode in
:F)
#
# CONFIG_FILE
#

# If the template does not know about datarootdir, expand it.
# FIXME: This hack should be removed a few years after 2.60.
ac_datarootdir_hack=; ac_datarootdir_seen=

case `sed -n '/datarootdir/ {
p
q
}
/@datadir@/p
/@docdir@/p
/@infodir@/p
/@localedir@/p
/@mandir@/p
' $ac_file_inputs` in
*datarootdir*) ac_datarootdir_seen=yes;;
*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
{ echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
ac_datarootdir_hack='
s&@datadir@&${datarootdir}&g
s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g
s&@infodir@&${datarootdir}/info&g
s&@localedir@&${datarootdir}/locale&g
s&@mandir@&${datarootdir}/man&g
s&\${datarootdir}&${prefix}/share&g' ;;
esac
sed "/^[ ]*VPATH[ ]*=/{
s/:*\$(srcdir):*/:/
s/:*\${srcdir}:*/:/
s/:*@srcdir@:*/:/
s/^\([^=]*=[ ]*\):*/\1/
s/:*$//
s/^[^=]*=[ ]*$//
}

:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
s&@configure_input@&$configure_input&;t t
s&@top_builddir@&$ac_top_builddir_sub&;t t
s&@srcdir@&$ac_srcdir&;t t
s&@abs_srcdir@&$ac_abs_srcdir&;t t
s&@top_srcdir@&$ac_top_srcdir&;t t
s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
s&@builddir@&$ac_builddir&;t t
s&@abs_builddir@&$ac_abs_builddir&;t t
s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
$ac_datarootdir_hack
" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out

test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
{ ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
{ ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
{ echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined." >&5
echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined." >&2;}

rm -f "$tmp/stdin"
case $ac_file in
-) cat "$tmp/out"; rm -f "$tmp/out";;
*) rm -f "$ac_file"; mv "$tmp/out" $ac_file;;
esac
;;



esac

done # for ac_tag


{ (exit 0); exit 0; }

+ 0
- 3757
java/trunk/configure
File diff suppressed because it is too large
View File


+ 0
- 37
java/trunk/configure.ac View File

@@ -1,37 +0,0 @@
dnl configure.ac
dnl
dnl Copyright (c) 2007 Vreixo Formoso
dnl
dnl This library is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.
dnl See COPYING file for details.
dnl

AC_INIT(java-libburn, 0.1)
AC_REVISION([$Revision: 0.1 $])

dnl look for java programs
AC_PATH_PROG([JAVAC], [javac])
AC_PATH_PROG([JAVAH], [javah])
AC_PATH_PROG([JAR], [jar])

AC_PROG_CC

dnl Package dependances
dnl -------------------------------------------------------------------------

dnl PKG_PROG_PKG_CONFIG()
dnl PKG_CHECK_MODULES([ISOFS], isofs)

AC_SUBST(ISOFS_INCLUDE,`pkg-config --cflags libisofs-1 | sed -e's/-I//g' -e's/ *$//g'`)
AC_SUBST(BURN_INCLUDE,`pkg-config --cflags libburn-1 | sed -e's/-I//g' -e's/ *$//g'`)

dnl Output Files
dnl -------------------------------------------------------------------------

AC_CONFIG_FILES([
build.properties
])
AC_OUTPUT

+ 0
- 4
java/trunk/libs/README View File

@@ -1,4 +0,0 @@
The lib/ hierarchy contains third party libraries.


TODO comentar cada libraria usada

+ 0
- 6
java/trunk/org.eclipse.jdt.ui.prefs View File

@@ -1,6 +0,0 @@
#Sat Mar 24 13:41:25 CET 2007
eclipse.preferences.version=1
org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author Vreixo Formoso\n * @since 0.1\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for over
#Sat Mar 24 13:41:25 CET 2007
eclipse.preferences.version=1
org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author Vreixo Formoso\n * @since 0.1\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for over

+ 0
- 82
java/trunk/src/java/org/pykix/libburnia/bindings/Proxy.java View File

@@ -1,82 +0,0 @@
/*
* Proxy.java
*
* Copyright (c) 2007 Vreixo Formoso
*
* This library is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* See COPYING file for details.
*/

package org.pykix.libburnia.bindings;

import java.lang.ref.WeakReference;
import java.util.HashMap;

/**
* Wrapper around a native C resource, i.e., a pointer.
*
* <p>
* This also keeps track of all Java objects that are a wrapper around
* a C object, to prevent replication of objects when retrieved from C
* side.
*
* <p>
* <b>This class is a implementation detail, that should be never user
* by a developer</b>
*
* @author Vreixo Formoso
* @since 0.1
*/
public abstract class Proxy {

/** Pointer to C object. */
private final long pointer;
/** Keeps track of existing pointers. */
private static final HashMap<Long, WeakReference<Proxy>> proxies =
new HashMap<Long, WeakReference<Proxy>>();
protected Proxy(long ptr) {
assert ptr != 0 : "Can't proxy a NULL pointer";
assert proxies.get(ptr) == null :
"Can't create a pointer for an existing proxy";
pointer = ptr;
proxies.put( ptr, new WeakReference<Proxy>(this) );
}
@Override
protected void finalize() throws Throwable {
super.finalize();
proxies.remove(pointer);
}
/**
* Get C pointer for a Proxy.
*
* @param obj
* @return
*/
protected static long pointerOf(Proxy obj) {
return obj.pointer;
}
/**
* Get the proxy registered for a pointer.
*
* @param ptr
* Pointer
* @return
* The Proxy or <code>null</code> if no Proxy is registered.
*/
protected static Proxy proxyFor(long ptr) {
WeakReference<Proxy> ref = proxies.get(ptr);
return ref == null ? null : ref.get();
}
}

+ 0
- 78
java/trunk/src/java/org/pykix/libburnia/libburn/BlockType.java View File

@@ -1,78 +0,0 @@
/*
* BlockType.java
*
* Copyright (c) 2007 Vreixo Formoso
*
* This library is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* See COPYING file for details.
*/

package org.pykix.libburnia.libburn;

/**
* Data format to send to the drive.
*
* @author Vreixo Formoso
* @since 0.1
*/
public enum BlockType {

/** sync, headers, edc/ecc provided by lib/user. */
RAW0(1),
/** sync, headers, edc/ecc and p/q subs provided by lib/user. */
RAW16(2),
/** sync, headers, edc/ecc and packed p-w subs provided by lib/user. */
RAW96P(4),
/** sync, headers, edc/ecc and raw p-w subs provided by lib/user. */
RAW96R(8),
/** only 2048 bytes of user data provided by lib/user. */
MODE1(256),
/** 2336 bytes of user data provided by lib/user. */
MODE2R(512),
/**
* 2048 bytes of user data provided by lib/user
* subheader provided in write parameters
* are we ever going to support this shit? I vote no.
* (supposed to be supported on all drives...)
*/
MODE2_PATHETIC(1024),
/**
* 2048 bytes of data + 8 byte subheader provided by lib/user
* hey, this is also dumb
*/
MODE2_LAME(2048),
/**
* 2324 bytes of data provided by lib/user
* subheader provided in write parameters.
* no sir, I don't like it.
*/
MODE2_OBSCURE(4096),
/**
* 2332 bytes of data supplied by lib/user
* 8 bytes sub header provided in write parameters
* this is the second least suck mode2, and is mandatory for
* all drives to support.
*/
MODE2_OK(8192),
/** SAO block sizes are based on cue sheet, so use this. */
SAO(16384);
int code;
private BlockType(int code) {
this.code = code;
}
}

+ 0
- 482
java/trunk/src/java/org/pykix/libburnia/libburn/Burn.java View File

@@ -1,482 +0,0 @@
/*
* Burn.java
*
* Copyright (c) 2007 Vreixo Formoso
*
* This library is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* See COPYING file for details.
*/

package org.pykix.libburnia.libburn;

/**
* Library initialization/shutdown and miscellaneous functions.
*
*
* @author Vreixo Formoso
* @since 0.1
*/
public class Burn {

static final String JNI_LIBRARY_NAME = "java-libburn-0.1";
/** Maximum number of particularly permissible drive addresses. */
public static final int WHITELIST_LEN = 255;
/**
* Initialize the library.
*
* <p>
* This must be called before using any other functions in the library. It
* may be called more than once with no effect.
*
* <p>
* It is possible to 'restart' the library by shutting it down and
* re-initializing it. This is necessary if you follow the older and
* more general way of accessing a drive via burn_drive_scan() and
* burn_drive_grab(). See burn_drive_scan_and_grab() with its strong
* urges and its explanations. TODO fix this comment
*
* @throws BurnException
* If library initialization fails.
*/
public static void initialize() throws BurnException {
if ( burn_initialize() == 0 ) {
throw new BurnException("Can't initialize libburnia library");
}
}
/**
* Shutdown the library.
*
* <p>
* This should be called before exiting your application. Make sure that all
* drives you have grabbed are released <i>before</i> calling this.
*/
public static void finish() {
burn_finish();
}
/**
* Set parameters for behavior on opening device files. To be called early
* after {@link #initialize()} and before any bus scan. But not mandatory at
* all.
*
* <p>
* Parameter value 1 enables a feature, 0 disables. Default is (1,0,0).
* Have a good reason before you change it.
*
* @param exclusive
* <ul>
* <li>1 = Try to open only devices which are not marked as busy
* and try to mark them busy if opened sucessfully. (O_EXCL)
* There are kernels which simply don't care about O_EXCL.
* Some have it off, some have it on, some are switchable.
* <li>2 = in case of a SCSI device, also try to open exclusively
* the matching /dev/sr, /dev/scd and /dev/st .
* <li>0 = no attempt to make drive access exclusive.
* </ul>
* @param blocking
* Try to wait for drives which do not open immediately but
* also do not return an error as well. (O_NONBLOCK)
* This might stall indefinitely with /dev/hdX hard disks.
* @param abortOnBusy
* Unconditionally abort process when a non blocking
* exclusive opening attempt indicates a busy drive.
* Use this only after thorough tests with your app.
*/
public static void presetDeviceOpen(int exclusive, int blocking,
int abortOnBusy) {
burn_preset_device_open(exclusive, blocking, abortOnBusy);
}
/**
* Allows the use of media types which are implemented in libburn but not
* yet tested. The list of those untested profiles is subject to change.
* Currently it contains: 0x15 "DVD-R/DL Sequential".
* If you really test such media, then please report the outcome on
* libburn-hackers@pykix.org
* If ever then this call should be done soon after {@link #initialize()}
* before any drive scanning.
*
* @param yes
* <code>true</code> to allow all implemented profiles,
* <code>false</code> only tested media (default)
*/
public static void allowUntestedProfiles(boolean yes) {
burn_allow_untested_profiles(yes);
}
/**
* Scan for drives.
*
* <p>
* No drives may be in use when this is called. All drive objects are
* invalidated by using this function. Do <b>NOT</b> store drive
* objects across calls to this function or death AND pain will ensue.
*
* <p>
* After this call all drives depicted by the returned array are subject
* to eventual (O_EXCL) locking. See burn_preset_device_open(). This state
* ends either with burn_drive_info_forget() or with burn_drive_release().
*
* <p>
* It is unfriendly to other processes on the system to hold drives locked
* which one does not definitely plan to use soon.
*
* @return
* an array of drive info items (cdroms/burners).
* The returned array must be freed by burn_drive_info_free()
* before burn_finish(), and also before calling this function
* burn_drive_scan() again.
* @throws BurnException
* If scan fails
*
* TODO correct above comment
*/
public static DriveInfo[] scan() throws BurnException {
DriveInfo[] infos = burn_drive_scan();
if ( infos == null ) {
throw new BurnException("No drives found");
}
return infos;
}
/**
* Aquire a drive with known persistent address.
*
* <p>
* This is the sysadmin friendly way to open one drive and to leave all
* others untouched. It bundles the following API calls to form a
* non-obtrusive way to use libburn:
* burn_drive_add_whitelist() , {@link #scan()}, {@link Drive#grab(boolean)}
*
* <p>
* You are <b>strongly urged</b> to use this call whenever you know the
* drive address in advance.
*
* <p>
* If not, then you have to use directly above calls. In that case, you are
* <b>strongly urged</b> to drop any unintended drive which will be
* exclusively occupied and not closed by {@link #scan()}.
* This can be done by shutting down the library including a call to