SHA256
1
0
forked from pool/bff4

Accepting request 125452 from home:etamPL:branches:devel:languages:misc

- added license-clarification.txt (bnc#761551) and updated
  license tag
- updated bff4.c
- renamed arg.patch -> bff4-arg.patch and added patch info
- improved and cleaned-up spec file

OBS-URL: https://build.opensuse.org/request/show/125452
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/bff4?expand=0&rev=7
This commit is contained in:
OBS User mrdocs 2012-06-19 16:45:10 +00:00 committed by Git OBS Bridge
parent 947fa72c34
commit ece0964847
5 changed files with 54 additions and 21 deletions

12
bff4.c
View File

@ -6,11 +6,11 @@
program have to be separated with ! e.g. ",.!a" prints 'a'
To use it in interactive mode paste your program as input.
This program can be compiled with LNR macro defined.
LNR is another optimization of linear loops (where '<>' balanced), e.g. [->+>++<<].
This program can be compiled with NOLNR macro defined.
NOLNR disables optimization of linear loops (where '<>' balanced), e.g. [->+>++<<].
Linear loop is then executed in one step.
Oleg Mazonka 4.12.06 http://mazonka.com/
Oleg Mazonka 4 Dec 2006 http://mazonka.com/
*/
@ -134,7 +134,7 @@ int main()
if( a==']' )
{
int l=1, i=sz;
while(l&&i>=0){ i--;l+=(o[i].c==']')-(o[i].c=='['); }
while(l&&i>=0) if(i--) l+=(o[i].c==']')-(o[i].c=='[');
if( i<0 ){ printf("unbalanced ']'\n"); exit(1); }
o[i].igo = sz;
o[sz].igo = i;
@ -145,7 +145,7 @@ int main()
for( i=0;i<sz;i++ )
{
o[i].go = &o[o[i].igo];
#ifdef LNR
#ifndef NOLNR
if( o[i].c == '[' && o[i].igo == i+1 && o[i].shift==0 && o[i].off <= 0 )
{
o[i].linear = -o[i].d[-o[i].off];
@ -198,7 +198,7 @@ int main()
}
#ifdef LNR
#ifndef NOLNR
if( z->linear )
{
int del = m[mp]/z->linear;

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Tue Jun 19 12:31:02 UTC 2012 - adam@mizerski.pl
- added license-clarification.txt (bnc#761551) and updated
license tag
- updated bff4.c
- renamed arg.patch -> bff4-arg.patch and added patch info
- improved and cleaned-up spec file
-------------------------------------------------------------------
Sat Sep 17 19:28:53 UTC 2011 - jengelh@medozas.de

View File

@ -1,7 +1,7 @@
#
# spec file for package bff4
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -16,17 +16,18 @@
#
Name: bff4
Version: 1
Release: 1
License: OSI_COMPLIANT_FREE(Public domain)
Source0: %{name}.c
Patch0: arg.patch
Group: Development/Languages/Other
Release: 0
Summary: Fast Brainfuck interpreter
License: SUSE-Public-Domain
Group: Development/Languages/Other
Url: http://mazonka.com/brainf/
Source0: %{name}.c
# bnc#761551
Source1: license-clarification.txt
# PATCH-FEATURE-OPENSUSE bff4-arg.patch adam@mizerski.pl -- add option to pass input file as command line argument
Patch0: %{name}-arg.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@ -34,25 +35,23 @@ Optimizing brainfuck implementation of dialect based on Daniel's dbfi (see "A ve
This interpreter has only one input: program and input to the program have to be separated with ! e.g. ",.!a" prints 'a' To use it in interactive mode paste your program as input.
This program can be compiled with LNR macro defined. LNR is another optimization of linear loops (where '<>' balanced), e.g. [->+>++<<]. Linear loop is then executed in one step.
This program is compiled with optimization of linear loops (where '<>' balanced), e.g. [->+>++<<]. Linear loop is then executed in one step.
Oleg Mazonka 4.12.06 http://mazonka.com/
%prep
%__cp %{SOURCE0} .
cp %{SOURCE0} %{SOURCE1} .
%patch0
%build
gcc %{SOURCE0} -o %{name} %optflags
gcc %{SOURCE0} -DLNR -o %{name}lnr %optflags
gcc %{name}.c -o %{name} %{optflags}
%install
%__install -D -m 755 %{name} %buildroot%{_bindir}/%{name}
%__install -D -m 755 %{name}lnr %buildroot%{_bindir}/%{name}lnr
install -D -m 755 %{name} %{buildroot}%{_bindir}/%{name}
%files
%defattr(-,root,root)
%{_bindir}/%{name}
%{_bindir}/%{name}lnr
%doc license-clarification.txt
%changelog

25
license-clarification.txt Normal file
View File

@ -0,0 +1,25 @@
Hi Adam,
You can use 'public domain' or another the least restrictive license.
Cheers,
- Oleg
-----Original Message-----
From: Adam Mizerski [mailto:adam@mizerski.pl]
Sent: Sunday, 24 January 2010 7:35 AM
To: mazonka@gmail.com
Subject: question about bff4
Hi.
Your brainfuck interpreter is pretty cool, and I wanted to build it on
openSuSE Build Service (http://en.opensuse.org/Build_Service). My
question is:
Under which license is source code of bff4 released?
(GPL, BSD, or maybe something else...)
It's needed to be written in package specification and I don't want to
leave it blank, or to choose by myself.
--
Adam Mizerski