Bug 230394 - [NEW PORT] devel/zapcc: Zapcc is a caching C++ compiler based on clang
Summary: [NEW PORT] devel/zapcc: Zapcc is a caching C++ compiler based on clang
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Yuri Victorovich
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-08-05 20:38 UTC by Martin Filla
Modified: 2018-08-14 05:51 UTC (History)
3 users (show)

See Also:


Attachments
zapcc.shar (76.36 KB, text/plain)
2018-08-05 20:38 UTC, Martin Filla
no flags Details
zapcc.shar (76.36 KB, text/plain)
2018-08-05 20:53 UTC, Martin Filla
no flags Details
zapcc.shar (76.37 KB, text/plain)
2018-08-05 21:12 UTC, Martin Filla
no flags Details
zapcc.shar (81.89 KB, text/plain)
2018-08-12 18:08 UTC, Martin Filla
no flags Details
zap (88.40 KB, text/plain)
2018-08-13 19:07 UTC, Martin Filla
no flags Details
zapcc.shar (88.40 KB, text/plain)
2018-08-13 19:08 UTC, Martin Filla
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Filla 2018-08-05 20:38:16 UTC
Created attachment 195916 [details]
zapcc.shar

Hello Yuri this new port zapcc
Comment 1 Martin Filla 2018-08-05 20:53:56 UTC
Created attachment 195918 [details]
zapcc.shar

Hello i forgot maintainer name.
Comment 2 Mateusz Piotrowski freebsd_committer 2018-08-05 20:55:46 UTC
Comment on attachment 195916 [details]
zapcc.shar

I've got a couple suggestions:

>sed 's/^X//' >zapcc/Makefile << '9e40616ac42fdf703374033a5e6a3766'
>X# $FreeBSD$
>X
>XPORTNAME=	zapcc
>XPORTVERSION=	1.0
>XCATEGORIES=	devel
>X
>XMAINTAINER=	maintainer@email.com

This should probably be updated :)

>XCOMMENT=	Zapcc clang based compiler

I wonder if something like "C++ caching compiler based on clang" is more descriptive.

>echo x - zapcc/pkg-descr
>sed 's/^X//' >zapcc/pkg-descr << '5d820e22206492458d2bf69d137a89cb'
>Xzapcc is a caching C++ compiler based on clang, designed to perform faster 
>Xcompilations. zapcc uses in-memory compilation cache in client-server 
>Xarchitecture, remembering all compilation information between runs. 
>Xzapcc is the client while zapccs is the server. Each zapcc run will reuse 
>Xan existing server or if none was available will start a new one.
>XWWW: https://www.zapcc.com/

There's a newline missing before WWW (or at least we usually put one there).
Comment 3 Mateusz Piotrowski freebsd_committer 2018-08-05 21:05:54 UTC
Comment on attachment 195916 [details]
zapcc.shar

Ups, my review reverted the "obsolete" flag on the first submission. Sorry about that.
Comment 4 Martin Filla 2018-08-05 21:12:54 UTC
Created attachment 195919 [details]
zapcc.shar

Changed description port and add new line in pkg-descr
Comment 5 Yuri Victorovich freebsd_committer 2018-08-05 21:24:16 UTC
Hi Martin,

Thank you for your contribution.

Here are the items that you need to change:
* Please replace all static libs with shared libs
* Please have all USExx statements in one section, beginning with USES=, no empty lines between them
* Since they didn't have releases, please don't make up a version number, and use the version gYYYYMMDD corresponding to the date of the git hash.

Thank you.
Yuri
Comment 6 Adam Weinberger freebsd_committer 2018-08-05 21:36:33 UTC
This also needs to list CONFLICTS with every port it conflicts with.
Comment 7 Martin Filla 2018-08-06 21:56:51 UTC
I am waiting for https://github.com/yrnkrn/zapcc/issues/23
Comment 8 Martin Filla 2018-08-12 18:08:42 UTC
Created attachment 196133 [details]
zapcc.shar

update shar file
Comment 9 Yuri Victorovich freebsd_committer 2018-08-12 19:11:13 UTC
It breaks on 10i386:

[1/3258] /usr/bin/c++  -DGTEST_HAS_RTTI=0 -DLLVM_BUILD_GLOBAL_ISEL -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/Support -I/wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/lib/Support -Iinclude -I/wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include -I/usr/local/include -O2 -pipe -fstack-protector -fno-strict-aliasing -w -fcolor-diagnostics -O2 -pipe -fstack-protector -fno-strict-aliasing -fPIC    -fno-exceptions -fno-rtti -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o -MF lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o.d -o lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o -c /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/lib/Support/ARMBuildAttrs.cpp
FAILED: lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o
/usr/bin/c++  -DGTEST_HAS_RTTI=0 -DLLVM_BUILD_GLOBAL_ISEL -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/Support -I/wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/lib/Support -Iinclude -I/wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include -I/usr/local/include -O2 -pipe -fstack-protector -fno-strict-aliasing -w -fcolor-diagnostics -O2 -pipe -fstack-protector -fno-strict-aliasing -fPIC    -fno-exceptions -fno-rtti -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o -MF lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o.d -o lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o -c /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/lib/Support/ARMBuildAttrs.cpp
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/lib/Support/ARMBuildAttrs.cpp:10:
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/StringRef.h:13:
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/STLExtras.h:31:
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/Optional.h:19:
/wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/None.h:24:23: error: expected a class or namespace
const NoneType None = NoneType::None;
                      ^
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/lib/Support/ARMBuildAttrs.cpp:10:
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/StringRef.h:13:
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/STLExtras.h:31:
In file included from /wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/ADT/Optional.h:20:
/wrkdirs/usr/ports/devel/zapcc/work/zapcc-b4c31cc/include/llvm/Support/AlignOf.h:140:59: error: expected '(' for function-style cast or type construction
                                      T6, T7, T8, T9, T10>),
                                      ~~~~~~~~~~~~~~~~~~~~^
Comment 10 Martin Filla 2018-08-12 20:22:56 UTC
FreeBSD 10 i will not support only 11 version because is on Freebsd 10 old deprecate clang
Comment 11 Yuri Victorovich freebsd_committer 2018-08-12 21:37:33 UTC
(In reply to Martin Filla from comment #10)

Ok. In such case you should write:
> BROKEN_FreeBSD_10=yes
> BROKEN_FreeBSD_10_REASON=xxx

I will do this, no worries.
Comment 12 Yuri Victorovich freebsd_committer 2018-08-12 21:38:40 UTC
But on 11amd64 it also fails:

> FAILED: lib/libLLVMTestingSupport.so.5.0.0svn
> : && /usr/bin/c++ -fPIC -O2 -pipe -fstack-protector -fno-strict-aliasing -fPIC -fvisibility-inlines-hidden -std=c++1y -w -fcolor-diagnostics -ffunction-sections -fdata-sections -O2 -pipe -fstack-protector -fno-strict-aliasing  -fstack-protector -fuse-ld=lld -Wl,-color-diagnostics   -Wl,-z,origin  -Wl,-O3 -Wl,--gc-sections -shared -Wl,-soname,libLLVMTestingSupport.so.5 -o lib/libLLVMTestingSupport.so.5.0.0svn lib/Testing/Support/CMakeFiles/LLVMTestingSupport.dir/Error.cpp.o -L/usr/local/lib -Wl,-rpath,"\$ORIGIN/../lib:/usr/local/lib" lib/libLLVMSupport.so.5.0.0svn -lgtest && :
> /usr/bin/ld.lld: error: unable to find library -lgtest
> c++: error: linker command failed with exit code 1 (use -v to see invocation)
Comment 13 Martin Filla 2018-08-13 19:07:02 UTC
Created attachment 196165 [details]
zap
Comment 14 Martin Filla 2018-08-13 19:08:23 UTC
Created attachment 196166 [details]
zapcc.shar

Update shar file
Comment 15 Yuri Victorovich freebsd_committer 2018-08-14 05:50:53 UTC
Committed with some changes.
Thank you for your contribution!
Comment 16 commit-hook freebsd_committer 2018-08-14 05:51:52 UTC
A commit references this bug:

Author: yuri
Date: Tue Aug 14 05:50:49 UTC 2018
New revision: 477134
URL: https://svnweb.freebsd.org/changeset/ports/477134

Log:
  New port: devel/zapcc: C++ caching compiler based on clang

  PR:		230394
  Submitted by:	Martin Filla <martinfilla@post.cz>

Changes:
  head/devel/Makefile
  head/devel/zapcc/
  head/devel/zapcc/Makefile
  head/devel/zapcc/distinfo
  head/devel/zapcc/files/
  head/devel/zapcc/files/patch-tools_zapcc_Client.cpp
  head/devel/zapcc/files/patch-tools_zapccs_CMakeLists.txt
  head/devel/zapcc/pkg-descr
  head/devel/zapcc/pkg-plist