From 189a68972da0f6a71135e7f69d7c7a4a74f7450f Mon Sep 17 00:00:00 2001 From: "Ralf S. Engelschall" Date: Sat, 28 Aug 2010 08:50:18 +0000 Subject: [PATCH] new package --- myjit/myjit.patch | 13 +++++++ myjit/myjit.spec | 88 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 myjit/myjit.patch create mode 100644 myjit/myjit.spec diff --git a/myjit/myjit.patch b/myjit/myjit.patch new file mode 100644 index 0000000000..0c578e95d9 --- /dev/null +++ b/myjit/myjit.patch @@ -0,0 +1,13 @@ +Index: Makefile +--- Makefile.orig 2010-08-28 10:38:16.000000000 +0200 ++++ Makefile 2010-08-28 10:41:00.000000000 +0200 +@@ -16,6 +16,9 @@ + gcc -c -g -Winline -std=c99 -D_XOPEN_SOURCE=600 debug.c + gcc -o debug -g -std=c99 debug.o jitlib-core.o + ++libmyjit.a: jitlib-core.o ++ ar cr libmyjit.a jitlib-core.o ++ ranlib libmyjit.a + + jitlib-core.o: myjit/jitlib.h myjit/jitlib-core.h myjit/jitlib-core.c myjit/jitlib-debug.c myjit/x86-codegen.h myjit/x86-specific.h myjit/reg-allocator.h myjit/flow-analysis.h myjit/set.h myjit/amd64-specific.h myjit/amd64-codegen.h myjit/sparc-codegen.h myjit/sparc-specific.h myjit/llrb.c myjit/reg-allocator.h myjit/rmap.h myjit/cpu-detect.h myjit/x86-common-stuff.c + gcc -c -g -Winline -std=c99 -D_XOPEN_SOURCE=600 myjit/jitlib-core.c diff --git a/myjit/myjit.spec b/myjit/myjit.spec new file mode 100644 index 0000000000..1dcc49febe --- /dev/null +++ b/myjit/myjit.spec @@ -0,0 +1,88 @@ +## +## myjit.spec -- OpenPKG RPM Package Specification +## Copyright (c) 2000-2010 OpenPKG Foundation e.V. +## +## Permission to use, copy, modify, and distribute this software for +## any purpose with or without fee is hereby granted, provided that +## the above copyright notice and this permission notice appear in all +## copies. +## +## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR +## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +## SUCH DAMAGE. +## + +# package information +Name: myjit +Summary: Just-In-Time (JIT) Compilation Library +URL: http://myjit.sourceforge.net/ +Vendor: Petr Krajca +Packager: OpenPKG Foundation e.V. +Distribution: OpenPKG Community +Class: EVAL +Group: CompilerCompiler +License: LGPL +Version: 0.5.0.0 +Release: 20100828 + +# list of sources +Source0: http://switch.dl.sourceforge.net/myjit/myjit-%{version}.tar.gz +Patch0: myjit.patch + +# build information +BuildPreReq: OpenPKG, openpkg >= 20100101, gcc +PreReq: OpenPKG, openpkg >= 20100101 + +%description + MyJIT is a library that allows to generate machine code at run-time + and afterwards execute this code. The project has started as a + tool enabling Just-in-Time compilation of the Schemik programming + language and it was considered as a replacement for the GNU + lightning library. The main goal was to fix some of its annoying + features. Therefore, MyJIT has a very similar instruction set as GNU + lightning, however, it differs in some aspects. + +%track + prog myjit = { + version = %{version} + url = http://sourceforge.net/projects/myjit/files/ + regex = myjit-(__VER__)\.tar\.gz + } + +%prep + %setup -q + %patch -p0 + %{l_shtool} subst \ + -e 's;key_t;myjit_key_t;g' \ + myjit/llrb.c + %{l_shtool} subst \ + -e 's;-Wall;;' \ + -e 's;-pedantic;;' \ + Makefile + +%build + %{l_make} %{l_mflags} libmyjit.a + +%install + %{l_shtool} mkdir -f -p -m 755 \ + $RPM_BUILD_ROOT%{l_prefix}/include/myjit \ + $RPM_BUILD_ROOT%{l_prefix}/lib + %{l_shtool} install -c -m 644 \ + libmyjit.a $RPM_BUILD_ROOT%{l_prefix}/lib/ + %{l_shtool} install -c -m 644 \ + myjit/*.h $RPM_BUILD_ROOT%{l_prefix}/include/myjit/ + %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} + +%files -f files + +%clean +