[pacman-dev] [PATCH v2 0/4] Splitting up makepkg into libmakepkg

ashley at awhetter.co.uk ashley at awhetter.co.uk
Thu Sep 5 18:13:17 EDT 2013


From: Ashley Whetter <ashley at awhetter.co.uk>

This time around I've split up amekpkg as per Allan's recommendation, and put
each function into it's own file.
There's a file at the base of each libmakepkg directory that imports that part
of the library. (eg libmakepkg/download.sh imports libmakepkg/download/*.sh).
Instead creating a file that imports every part of the library, I've instead put
the for loop straight into makepkg.sh.in.
Each libmakepkg file has it's own inclusion guard.
Each libmakepkg copyright notice was deduced from the full set, dependent on
what years git blame said that each line of a function had been written in.

I feel like the scripts Makefile is getting a bit cluttered.
Even the number of .sh.in files is getting a bit big. This could be reduced
by not using LIBRARY in every libmakepkg file and using relative imports instead,
but this seems like even less of a good idea.
I'm not really sure if/how we want to get rid of this issue.

Allan McRae (2):
  makepkg: run locally with libtool style wrapper
  makepkg: add LIBRARY variable

Ashley Whetter (2):
  Moved dependencies of download functions into a library
  Moved makepkg download functions into libmakepkg

 scripts/.gitignore                                 |  17 +
 scripts/Makefile.am                                | 121 ++++++
 scripts/libmakepkg/download.sh.in                  |  30 ++
 scripts/libmakepkg/download/bzr.sh.in              |  77 ++++
 scripts/libmakepkg/download/file.sh.in             |  89 +++++
 scripts/libmakepkg/download/git.sh.in              |  65 +++
 scripts/libmakepkg/download/hg.sh.in               |  59 +++
 scripts/libmakepkg/download/local.sh.in            |  44 ++
 scripts/libmakepkg/download/sources.sh.in          |  71 ++++
 scripts/libmakepkg/download/svn.sh.in              |  67 ++++
 scripts/libmakepkg/messages.sh.in                  |  30 ++
 scripts/libmakepkg/messages/error.sh               |  32 ++
 scripts/libmakepkg/messages/msg.sh                 |  35 ++
 scripts/libmakepkg/messages/msg2.sh                |  33 ++
 scripts/libmakepkg/messages/plain.sh               |  35 ++
 scripts/libmakepkg/messages/warning.sh             |  35 ++
 scripts/libmakepkg/pkgbuild.sh.in                  |  30 ++
 .../libmakepkg/pkgbuild/get_downloadclient.sh.in   |  60 +++
 scripts/libmakepkg/pkgbuild/get_filename.sh.in     |  60 +++
 scripts/libmakepkg/pkgbuild/get_filepath.sh.in     |  62 +++
 scripts/libmakepkg/pkgbuild/get_protocol.sh        |  38 ++
 scripts/libmakepkg/pkgbuild/get_url.sh             |  30 ++
 scripts/libmakepkg/util.sh.in                      |  30 ++
 scripts/libmakepkg/util/cd_safe.sh.in              |  36 ++
 scripts/libmakepkg/util/dir_is_empty.sh            |  32 ++
 scripts/libmakepkg/util/in_array.sh                |  38 ++
 scripts/makepkg-wrapper.sh.in                      |  23 ++
 scripts/makepkg.sh.in                              | 443 +--------------------
 28 files changed, 1286 insertions(+), 436 deletions(-)
 create mode 100644 scripts/libmakepkg/download.sh.in
 create mode 100644 scripts/libmakepkg/download/bzr.sh.in
 create mode 100644 scripts/libmakepkg/download/file.sh.in
 create mode 100644 scripts/libmakepkg/download/git.sh.in
 create mode 100644 scripts/libmakepkg/download/hg.sh.in
 create mode 100644 scripts/libmakepkg/download/local.sh.in
 create mode 100644 scripts/libmakepkg/download/sources.sh.in
 create mode 100644 scripts/libmakepkg/download/svn.sh.in
 create mode 100644 scripts/libmakepkg/messages.sh.in
 create mode 100644 scripts/libmakepkg/messages/error.sh
 create mode 100644 scripts/libmakepkg/messages/msg.sh
 create mode 100644 scripts/libmakepkg/messages/msg2.sh
 create mode 100644 scripts/libmakepkg/messages/plain.sh
 create mode 100644 scripts/libmakepkg/messages/warning.sh
 create mode 100644 scripts/libmakepkg/pkgbuild.sh.in
 create mode 100644 scripts/libmakepkg/pkgbuild/get_downloadclient.sh.in
 create mode 100644 scripts/libmakepkg/pkgbuild/get_filename.sh.in
 create mode 100644 scripts/libmakepkg/pkgbuild/get_filepath.sh.in
 create mode 100644 scripts/libmakepkg/pkgbuild/get_protocol.sh
 create mode 100644 scripts/libmakepkg/pkgbuild/get_url.sh
 create mode 100644 scripts/libmakepkg/util.sh.in
 create mode 100644 scripts/libmakepkg/util/cd_safe.sh.in
 create mode 100644 scripts/libmakepkg/util/dir_is_empty.sh
 create mode 100644 scripts/libmakepkg/util/in_array.sh
 create mode 100644 scripts/makepkg-wrapper.sh.in

-- 
1.8.4



More information about the pacman-dev mailing list