public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
* [ITP] libsass v3.3.6
@ 2016-06-02 15:10 Marcos Vives Del Sol
  2016-06-06 10:09 ` Marco Atzeri
  0 siblings, 1 reply; 12+ messages in thread
From: Marcos Vives Del Sol @ 2016-06-02 15:10 UTC (permalink / raw)
  To: cygwin-apps

LibSass is an open-source, MIT-licensed implementation in C++ of a CSS
preprocessor for SASS and SCSS.

It is already packed by several mainstream distros, such as Debian
(https://packages.debian.org/source/sid/libsass) and Ubuntu
(http://packages.ubuntu.com/xenial/libsass0)

The library is split in two parts: runtime and development. Their
setup.hints, as generated by cygport, are:

 - For libsass0:
category: Libs
requires: cygwin libgcc1 libstdc++6
sdesc: "C/C++ implementation of a Sass compiler (runtime)"
ldesc: "LibSass is a C/C++ port of the original Ruby Sass CSS
precompiler. This library strives to be light, simple, and easy to
build and integrate with a variety of platforms and languages."
external-source: libsass

 - For libsass-devel:
category: Libs Devel
requires: libsass0
sdesc: "C/C++ implementation of a Sass compiler (development)"
ldesc: "LibSass is a C/C++ port of the original Ruby Sass CSS
precompiler. This library strives to be light, simple, and easy to
build and integrate with a variety of platforms and languages."
external-source: libsass

Precompiled binary for Cygwin x64 is available here:
http://mural.uv.es/videlsol/libsass/

-- 
Marcos Vives Del Sol
https://github.com/socram8888
miniLock: NscWdW8fh2E5SBoRtrnXWrDwmQmwaR5awMKE78tQW1Ffx

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-02 15:10 [ITP] libsass v3.3.6 Marcos Vives Del Sol
@ 2016-06-06 10:09 ` Marco Atzeri
  2016-06-06 16:46   ` Marcos Vives Del Sol
  0 siblings, 1 reply; 12+ messages in thread
From: Marco Atzeri @ 2016-06-06 10:09 UTC (permalink / raw)
  To: cygwin-apps

On 02/06/2016 17:09, Marcos Vives Del Sol wrote:
> LibSass is an open-source, MIT-licensed implementation in C++ of a CSS
> preprocessor for SASS and SCSS.
>
> It is already packed by several mainstream distros, such as Debian
> (https://packages.debian.org/source/sid/libsass) and Ubuntu
> (http://packages.ubuntu.com/xenial/libsass0)
[cut]
> Precompiled binary for Cygwin x64 is available here:
> http://mural.uv.es/videlsol/libsass/
>


builds and packages fine, but I suggest you

1) to add

DIFF_EXCLUDES="VERSION"

to avoid the useless creation of libsass-3.3.6-1.src.patch

2) to move "usr/share/doc" from "libsass0" to "libsass-devel"
----------------------------------------------
# libsass
libsass0_SUMMARY="${SUMMARY} (runtime)"
libsass0_DESCRIPTION="${DESCRIPTION}"
libsass0_CATEGORY="Libs"
libsass0_CONTENTS="usr/bin/ usr/share/doc/"

# libsass-devel
libsass_devel_SUMMARY="${SUMMARY} (development)"
libsass_devel_DESCRIPTION="${DESCRIPTION}"
libsass_devel_CATEGORY="Libs Devel"
libsass_devel_CONTENTS="usr/include/ usr/lib/"
------------------------------------------------


I assume you tested it as per
https://github.com/sass/sass-spec

Regards
Marco


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-06 10:09 ` Marco Atzeri
@ 2016-06-06 16:46   ` Marcos Vives Del Sol
  2016-06-06 17:07     ` Achim Gratz
  0 siblings, 1 reply; 12+ messages in thread
From: Marcos Vives Del Sol @ 2016-06-06 16:46 UTC (permalink / raw)
  To: cygwin-apps

2016-06-06 12:08 GMT+02:00 Marco Atzeri:
> builds and packages fine, but I suggest you
>
> 1) to add
>
> DIFF_EXCLUDES="VERSION"
>
> to avoid the useless creation of libsass-3.3.6-1.src.patch
Actually the patch isn't useless. It creates a VERSION file which
version.sh expects to exist during the building process. Without that
file, the library reports version "[na]" instead of the correct 3.3.6.

> 2) to move "usr/share/doc" from "libsass0" to "libsass-devel"
I've moved it to -devel, so they cygport file now reads:
---------------------------------------
# libsass
libsass0_SUMMARY="${SUMMARY} (runtime)"
libsass0_DESCRIPTION="${DESCRIPTION}"
libsass0_CATEGORY="Libs"
libsass0_CONTENTS="usr/bin/"

# libsass-devel
libsass_devel_SUMMARY="${SUMMARY} (development)"
libsass_devel_DESCRIPTION="${DESCRIPTION}"
libsass_devel_CATEGORY="Libs Devel"
libsass_devel_CONTENTS="usr/include/ usr/lib/ usr/share/doc/"
---------------------------------------
The updated package is available here: http://mural.uv.es/videlsol/libsass/

> I assume you tested it as per
> https://github.com/sass/sass-spec
Regarding tests, to be honest, I had not run any before. I tried
compiling a few Sass using sassc from Bootstrap v4 and it all went
fine, so I assumed it was working as expected. I've just now run them,
and there are nine parsing errors (out of around five thousands
asserts). The execution and the errors and can be seen here:
http://pastebin.com/yTcpK3Pj

They are probably nothing to worry about: the libsass library is for
the 3.3.x version of the specification, while the spec repository only
has tests for 3.4 onwards. I suppose the failing tests are caused by
newer features not available in the 3.3.x specification.

Regards,

-- 
Marcos Vives Del Sol
https://github.com/socram8888
miniLock: NscWdW8fh2E5SBoRtrnXWrDwmQmwaR5awMKE78tQW1Ffx

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-06 16:46   ` Marcos Vives Del Sol
@ 2016-06-06 17:07     ` Achim Gratz
  2016-06-07  9:36       ` Marcos Vives Del Sol
  0 siblings, 1 reply; 12+ messages in thread
From: Achim Gratz @ 2016-06-06 17:07 UTC (permalink / raw)
  To: cygwin-apps

Marcos Vives Del Sol writes:
>> to avoid the useless creation of libsass-3.3.6-1.src.patch
> Actually the patch isn't useless. It creates a VERSION file which
> version.sh expects to exist during the building process. Without that
> file, the library reports version "[na]" instead of the correct 3.3.6.

That file is created by configure, so patching it in anyway is still
useless.  In fact it's wrong the next time you update the source
archive.  You should never package files or patches that the build
system can re-create (and by extension remove such files from the source
directory should upstream package them for folks who don't use the full
configury).


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Wavetables for the Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#BlofeldUserWavetables

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-06 17:07     ` Achim Gratz
@ 2016-06-07  9:36       ` Marcos Vives Del Sol
  2016-06-07  9:49         ` Achim Gratz
  0 siblings, 1 reply; 12+ messages in thread
From: Marcos Vives Del Sol @ 2016-06-07  9:36 UTC (permalink / raw)
  To: cygwin-apps

2016-06-06 19:07 GMT+02:00 Achim Gratz <Stromeko@nexgo.de>:
> That file is created by configure, so patching it in anyway is still
> useless.
No. The file created by configure is version.h.

VERSION file later is employed by the version.sh script:
-----------------
if test "x$LIBSASS_VERSION" = "x"; then
  LIBSASS_VERSION=`git describe --abbrev=4 --dirty --always --tags 2>/dev/null`
fi
if test "x$LIBSASS_VERSION" = "x"; then
  LIBSASS_VERSION=`cat VERSION 2>/dev/null`
fi
if test "x$LIBSASS_VERSION" = "x"; then
  LIBSASS_VERSION="[na]"
fi
echo $LIBSASS_VERSION
-----------------
Former will fail because it's not a git repository, so it falls back
to reading from VERSION file, or else it will use "[na]".

This script is called using m4_esyscmd_s from configure.ac line 6:
-----------------
AC_INIT([libsass], m4_esyscmd_s([./version.sh]), [support@moovweb.com])
-----------------
to set the library version at compile time. Then configure uses it to
generate the version.h file.

The patch is supposed to create that file at
./libsass-3.3.6-1.i686/src/VERSION, but for some reason cygport
creates it at ./libsass-3.3.6-1.i686/src/libsass-3.3.6/src/libsass-3.3.6/VERSION,
so version.sh can't read it and reports "[na]" anyway. Any insight on
why the patch created by cygport itself isn't working?

-- 
Marcos Vives Del Sol
https://github.com/socram8888
miniLock: NscWdW8fh2E5SBoRtrnXWrDwmQmwaR5awMKE78tQW1Ffx

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-07  9:36       ` Marcos Vives Del Sol
@ 2016-06-07  9:49         ` Achim Gratz
  2016-06-07 10:02           ` Marco Atzeri
  0 siblings, 1 reply; 12+ messages in thread
From: Achim Gratz @ 2016-06-07  9:49 UTC (permalink / raw)
  To: cygwin-apps

Marcos Vives Del Sol <socram8888@...> writes:
> This script is called using m4_esyscmd_s from configure.ac line 6:
> -----------------
> AC_INIT([libsass], m4_esyscmd_s([./version.sh]), [support@...])
> -----------------
> to set the library version at compile time. Then configure uses it to
> generate the version.h file.

Make a patch for configure.ac and add it to PATCH_URI, then.  That will
patch in origsrc/ and hence not produce a libsass.src.patch file later on.

Based on the way configure is supposed to be working it seems that either
the tarball you're using is incomplete (did you use a Git snapshot?) or they
forgot to package the VERSION file.


Regards,
Achim.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-07  9:49         ` Achim Gratz
@ 2016-06-07 10:02           ` Marco Atzeri
  2016-06-07 22:18             ` Marcos Vives Del Sol
  0 siblings, 1 reply; 12+ messages in thread
From: Marco Atzeri @ 2016-06-07 10:02 UTC (permalink / raw)
  To: cygwin-apps

On 07/06/2016 11:49, Achim Gratz wrote:
> Marcos Vives Del Sol <socram8888@...> writes:
>> This script is called using m4_esyscmd_s from configure.ac line 6:
>> -----------------
>> AC_INIT([libsass], m4_esyscmd_s([./version.sh]), [support@...])
>> -----------------
>> to set the library version at compile time. Then configure uses it to
>> generate the version.h file.
>
> Make a patch for configure.ac and add it to PATCH_URI, then.  That will
> patch in origsrc/ and hence not produce a libsass.src.patch file later on.
>
> Based on the way configure is supposed to be working it seems that either
> the tarball you're using is incomplete (did you use a Git snapshot?) or they
> forgot to package the VERSION file.
>
>
> Regards,
> Achim.
>

in an case Marcos the patch is not doing what
you think it should do.

------------------------------------------------------------
$ cat libsass-3.3.6-1.src.patch
--- origsrc/libsass-3.3.6/VERSION       1970-01-01 01:00:00.000000000 +0100
+++ src/libsass-3.3.6/VERSION   2016-06-02 16:25:17.016583300 +0200
@@ -0,0 +1 @@
+3.3.6
------------------------------------------------------------

As VERSION doesn't exist is is not created in the
src root (libsass-3.3.6-1.x86_64/src/libsass-3.3.6)
but two level upper:

$ find libsass-3.3.6-1.x86_64 -name VERSION
libsass-3.3.6-1.x86_64/src/libsass-3.3.6/src/libsass-3.3.6/VERSION

It is a side unwanted effect of the smart patching.
If you want to create it, you should rewrite it as:

------------------------------------------------------------
$ cat libsass-VERSION.patch
--- VERSION       1970-01-01 01:00:00.000000000 +0100
+++ VERSION   2016-06-02 16:25:17.016583300 +0200
@@ -0,0 +1 @@
+3.3.6
------------------------------------------------------------

and define PATCH_URI="libsass-VERSION.patch"

Regards
Marco

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-07 10:02           ` Marco Atzeri
@ 2016-06-07 22:18             ` Marcos Vives Del Sol
  2016-06-08  5:46               ` Achim Gratz
  2016-06-09  9:37               ` Marco Atzeri
  0 siblings, 2 replies; 12+ messages in thread
From: Marcos Vives Del Sol @ 2016-06-07 22:18 UTC (permalink / raw)
  To: cygwin-apps

On 07/06/2016 11:49, Achim Gratz wrote:
> Based on the way configure is supposed to be working it seems that either
> the tarball you're using is incomplete (did you use a Git snapshot?) or
> they forgot to package the VERSION file.
Yes. It's a Git snapshot indeed, as generated by GitHub (using the
built-in release functionality), and they forgot to create the VERSION
file after creating the package. The .tar.gz is 1:1 from
https://github.com/sass/libsass/releases/tag/3.3.6.

2016-06-07 12:02 GMT+02:00 Marco Atzeri:
> As VERSION doesn't exist is is not created in the
> src root (libsass-3.3.6-1.x86_64/src/libsass-3.3.6)
> but two level upper:
>
...
>
> It is a side unwanted effect of the smart patching.
> If you want to create it, you should rewrite it as:
Thanks! Fixed: http://mural.uv.es/videlsol/libsass/

-- 
Marcos Vives Del Sol
https://github.com/socram8888
miniLock: NscWdW8fh2E5SBoRtrnXWrDwmQmwaR5awMKE78tQW1Ffx

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-07 22:18             ` Marcos Vives Del Sol
@ 2016-06-08  5:46               ` Achim Gratz
  2016-06-08  8:02                 ` Marcos Vives Del Sol
  2016-06-09  9:37               ` Marco Atzeri
  1 sibling, 1 reply; 12+ messages in thread
From: Achim Gratz @ 2016-06-08  5:46 UTC (permalink / raw)
  To: cygwin-apps

Marcos Vives Del Sol writes:
> On 07/06/2016 11:49, Achim Gratz wrote:
>> Based on the way configure is supposed to be working it seems that either
>> the tarball you're using is incomplete (did you use a Git snapshot?) or
>> they forgot to package the VERSION file.
> Yes. It's a Git snapshot indeed, as generated by GitHub (using the
> built-in release functionality), and they forgot to create the VERSION
> file after creating the package. The .tar.gz is 1:1 from
> https://github.com/sass/libsass/releases/tag/3.3.6.

They didn't forget anything, you are just not using a release tarball.
In that case you are expected to either build from a proper Git checkout
or run the release preparations yourself before configure.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Wavetables for the Terratec KOMPLEXER:
http://Synth.Stromeko.net/Downloads.html#KomplexerWaves

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-08  5:46               ` Achim Gratz
@ 2016-06-08  8:02                 ` Marcos Vives Del Sol
  2016-06-08 18:55                   ` Achim Gratz
  0 siblings, 1 reply; 12+ messages in thread
From: Marcos Vives Del Sol @ 2016-06-08  8:02 UTC (permalink / raw)
  To: cygwin-apps

2016-06-08 7:46 GMT+02:00 Achim Gratz:
> They didn't forget anything, you are just not using a release tarball.
> In that case you are expected to either build from a proper Git checkout
> or run the release preparations yourself before configure.
I am compiling a release tarball, as I've already said:
https://github.com/sass/libsass/archive/3.3.6.tar.gz. That's the
official tarball.

Anything else to fix before it's GTG?

-- 
Marcos Vives Del Sol
https://github.com/socram8888
miniLock: NscWdW8fh2E5SBoRtrnXWrDwmQmwaR5awMKE78tQW1Ffx

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-08  8:02                 ` Marcos Vives Del Sol
@ 2016-06-08 18:55                   ` Achim Gratz
  0 siblings, 0 replies; 12+ messages in thread
From: Achim Gratz @ 2016-06-08 18:55 UTC (permalink / raw)
  To: cygwin-apps

Marcos Vives Del Sol writes:
> 2016-06-08 7:46 GMT+02:00 Achim Gratz:
>> They didn't forget anything, you are just not using a release tarball.
>> In that case you are expected to either build from a proper Git checkout
>> or run the release preparations yourself before configure.
> I am compiling a release tarball, as I've already said:
> https://github.com/sass/libsass/archive/3.3.6.tar.gz. That's the
> official tarball.

I've looked at their Makefile and documentation and it appears that
upstream don't do any preparation of any sorts for a release.  The
"release tarballs" are just snapshots for the release tag that don't
contain the extra file(s) that would actually be required based on the
rules in configure and the Makefile.

> Anything else to fix before it's GTG?

You might want to consider building from a Git checkout instead of the
tarball.  It seems that this is the recommended way to build and the
other build venues are obviously more or less untested these days.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Q+, Q and microQ:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ITP] libsass v3.3.6
  2016-06-07 22:18             ` Marcos Vives Del Sol
  2016-06-08  5:46               ` Achim Gratz
@ 2016-06-09  9:37               ` Marco Atzeri
  1 sibling, 0 replies; 12+ messages in thread
From: Marco Atzeri @ 2016-06-09  9:37 UTC (permalink / raw)
  To: cygwin-apps

On 08/06/2016 00:17, Marcos Vives Del Sol wrote:
> On 07/06/2016 11:49, Achim Gratz wrote:
>> Based on the way configure is supposed to be working it seems that either
>> the tarball you're using is incomplete (did you use a Git snapshot?) or
>> they forgot to package the VERSION file.
> Yes. It's a Git snapshot indeed, as generated by GitHub (using the
> built-in release functionality), and they forgot to create the VERSION
> file after creating the package. The .tar.gz is 1:1 from
> https://github.com/sass/libsass/releases/tag/3.3.6.
>
> 2016-06-07 12:02 GMT+02:00 Marco Atzeri:
>> As VERSION doesn't exist is is not created in the
>> src root (libsass-3.3.6-1.x86_64/src/libsass-3.3.6)
>> but two level upper:
>>
> ...
>>
>> It is a side unwanted effect of the smart patching.
>> If you want to create it, you should rewrite it as:
> Thanks! Fixed: http://mural.uv.es/videlsol/libsass/
>

I added libsass to the package list.
Feel free to upload

Regards
Marco

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-06-09  9:37 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-02 15:10 [ITP] libsass v3.3.6 Marcos Vives Del Sol
2016-06-06 10:09 ` Marco Atzeri
2016-06-06 16:46   ` Marcos Vives Del Sol
2016-06-06 17:07     ` Achim Gratz
2016-06-07  9:36       ` Marcos Vives Del Sol
2016-06-07  9:49         ` Achim Gratz
2016-06-07 10:02           ` Marco Atzeri
2016-06-07 22:18             ` Marcos Vives Del Sol
2016-06-08  5:46               ` Achim Gratz
2016-06-08  8:02                 ` Marcos Vives Del Sol
2016-06-08 18:55                   ` Achim Gratz
2016-06-09  9:37               ` Marco Atzeri

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).