Hi Jagat!

On Wed, Feb 27, 2013 at 12:50 AM, Jagat Singh <[email protected]> wrote:
> Hi,
>
> I am looking at building bigtop with patches from few Jira under review at
> apache.
>
> I saw in
>
> /home/jj/source/bigtop/bigtop/package.mk
>
>
> # Untar and patch
> $(BUILD_DIR)/%/.tar:
>     -rm -rf $(PKG_BUILD_DIR)/tar/
>     mkdir -p
> $(PKG_BUILD_DIR)/tar/$($(PKG)_NAME)-$(PKG_PKG_VERSION)$(BIGTOP_BUILD_STAMP)
>     if [ -n "$($(PKG)_TARBALL_SRC)" ]; then \
>       cp $($(PKG)_DOWNLOAD_DST)
> $(PKG_BUILD_DIR)/tar/$($(PKG)_PKG_NAME)_$(PKG_PKG_VERSION)$(BIGTOP_BUILD_STAMP).orig.tar.gz
> ;\
>       tar -C
> $(PKG_BUILD_DIR)/tar/$($(PKG)_NAME)-$(PKG_PKG_VERSION)$(BIGTOP_BUILD_STAMP)
> \
>               --strip-components 1 -xzvf
> $(PKG_BUILD_DIR)/tar/$($(PKG)_PKG_NAME)_$(PKG_PKG_VERSION)$(BIGTOP_BUILD_STAMP).orig.tar.gz;
> \
>     fi
>     if [ -f $(BASE_DIR)/bigtop-packages/src/common/$($(PKG)_NAME)/series ];
> then    \
>       PATCHES="`cat
> $(BASE_DIR)/bigtop-packages/src/common/$($(PKG)_NAME)/series`" ;\
>     elif [ -f $(BASE_DIR)/bigtop-packages/src/common/$($(PKG)_NAME)/patch ];
> then   \
>       PATCHES="patch"
> ;\
>     else
>
>
> My question is if i create patch named directory under bigtop at following
> locations for hadoop , then would bigtop apply all patches in patch
> directory to build ?

It will, but those patches won't get pull into the packages. What you
see in the makefile was a quick hack to enable us building patched
tarballs. IOW, if you type:
     $ make [component]-tar
you'll get a build of a patched tarball, but if you type:
     $ maek foo-rpm
you will NOT get those patches into the RPM.

The reason for that is that it would be nice to tie-in into the
package specific patch management systems (quilt, etc)
but we haven't had time for that.

Would love to receive the patches though!

> Second question
>
> If i want to build without downloading new tar from net , how can i tell
> bigtop to not to download and use existing.

It actually caches everything in the dl subdirectory. Make pays attention
to the file called .download which means if you touch it -- it would assume
that the tarball is already in place. E.g.:
    $ touch build/[component]/.download

Thanks,
Roman.

Reply via email to