[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#797898: RFS: caffe/0.9999~rc2+git20150902+e8e660d3-1 [ITP]



On Thu, 2015-09-03 at 15:13 +0000, Gianfranco Costamagna wrote:
> 
> Hi,
> 
> control:
> 
> libboost-all-dev (>= 1.55) | libboost1.55-all-dev (>= 1.55),
> what is the rationale for that? I guess libboost-all-dev is already enough...

I've removed libboost1.55-all-dev (>= 1.55) locally.

> Multi-Arch: no
> isn't that the default?

Really? let me look up for some doc...
if so I'll strip them.

> "Pre-Depends: ${misc:Pre-Depends}"
> 
> this should be useless

Since it's generated by default with debmake (next-gen dh-make),
I didn't notice that.

I've stripped them locally.

> 
> rules:
> --builddirectory=
> can be passed also in dh call, making useless everywhere

(I'm not sure I'm following you at this point)
Initially I wrote rules as so:

%:
  dh $@ --builddirectory=XX1
if flag
  dh $@ --builddirectory=XX2
endif

Then I found that I can't control the rules
within my understanding (because of the another conditional build
-- cuda version)

And current rules is easy for me to understand and maintain.

> "fakeroot dh binary"
> 
> well, I usually don't like such hacks in rules file :)

This is just part of custom target, which is not included in
the standard build process, and it's for user's custom localbuild.

Inspired by Debian's OpenBLAS, I provided 2 custom targets:
custom-cpu and custom-cuda
and that's the way I found that works and can generate the packages.

For detail please see debian/README.Debian :-)

> CUSTOM_JOBS   := "-j4"
> 
> well mips porters might hate you for this!

I think I should clarify the variable.

As said above and said in `debian/README.Debian`, this is
just a job number control of custom-* targets, and has no
effect on standard dpkg-buildpackage process jobs, which is
controlled by ENVs and --parallel.

> isn't something like
> override_dh_auto_build:
> dh_auto_configure flags-build1
> dh_auto_build -O--parallel --builddirectory=build1
> dh_auto_configure flags-build2
> dh_auto_build -O--parallel --builddirectory=build2
> 
> not good for your purpose?

override_dh_auto_build:
    dh_auto_build --builddirectory=${CAFFE_CPU_BUILDDIR} \ 
        -- all caffe pycaffe  
ifeq (y, $(flag_build_caffe_cuda)) 
    dh_auto_build --builddirectory=${CAFFE_CUDA_BUILDDIR} \ 
        -- all caffe pycaffe  
endif 

Cafffe_cuda is a conditional build, which means the build
against caffe_cuda should only be triggered on i386|amd64.

IMHO squashing dh_auto_configure and dh_auto_build into
override_dh_auto_build can make understanding dh behaviour
harder...

I'll have a search on codesearch.d.n soon and see how others
handle issues alike.



In all, I'm satisfied with current rules, as it's easy to understand,
and tweak.

Thank you so much for reviewing it.
I'll do another mentors upload soon, after an investigation on
codesearch.d.n

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: